创建一个集合语法:db.createCollection(name,options)
db.createCollection("mycol", { capped : true, size : 6142800, max : 10000 } )
{ "ok" : 1 }
查看集合:
> show tables
mycol
system.users
system.version
如果集合不存在,直接插入数据,则mongodb会自动创建集合
db.Account.insert({AccountID:1,UserName:"123",password:"123456"})
更新:
db.Account.update({AccountID:1},{"$set":{"Age":20}})
查看所有文档:
db.Account.find()
根据条件查询:
db.Account.find({AccountID:1})
根据条件删除:
db.Account.remove({AccountID:1})
删除所有文档,即删除集合:
db.Account.drop()
先进入对应的库:
use dbname
然后查看集合状态:
db.printCollectionStats()
在官方的站点我们看到截止到目前仍然有两个扩展一个是:mongodb.so 和mongo.so,两者有什么区别呢?
官方解释:
The mongo extension available from PECL is an older, legacy driver for PHP 5.x. The mongo extension is no longer maintained and new projects are advised to use the mongodb extension and PHP library. A community-developed Mongo PHP Adapter project implements the legacy mongo extension’s API using the new mongodb extension and PHP library, which may be useful for those wishing to migrate existing applications.
意思是:当前mongo扩展比较老了,针对的是5.X的版本。以后就不再使用,逐渐被接替的是mongodb.so
cd /usr/local/src/
wget https://pecl.php.net/get/mongodb-1.3.0.tgz
tar zxvf mongodb-1.3.0.tgz
cd mongodb-1.3.0
/usr/local/php-fpm/bin/phpize
./configure --with-php-config=/usr/local/php-fpm/bin/php-config
make && make install
echo $?
vi /usr/local/php-fpm/etc/php.ini
//增加 extension = mongodb.so
/usr/local/php-fpm/bin/php -m
cd /usr/local/src/
wget https://pecl.php.net/get/mongo-1.6.16.tgz
tar zxvf mongo-1.6.16.tgz
cd mongo-1.6.16
/usr/local/php-fpm/bin/phpize
./configure --with-php-config=/usr/local/php-fpm/bin/php-config
make && make install
vi /usr/local/php-fpm/etc/php.ini
//增加 extension = mongo.so
/usr/local/php-fpm/bin/php -m
vim /data/wwwroot/www.haha.com/mongo.php
创建集合的代码片段如下:
<?php
$m = new MongoClient(); // 连接
$db = $m->test; // 获取名称为 "test" 的数据库
$collection = $db->createCollection("runoob");
echo "集合创建成功";
?>
执行以上程序,输出结果如下:
[[email protected]-01 mongo-1.6.16]# curl localhost/mongo.php
集合创建成功
然后我们需要登录到mongodb去查看是否已经正常创建了集合!
> use test
switched to db test
> show tables
runoob
已经正常创建了!