结构:
database 数据库

collection 数据库表/集合

document 数据记录行/文档

field 数据字段/域

index 索引

primary key 主键,mongodb自动将_id字段设置为主键

 

常用指令:

db.help():查看库方法

db.mycoll.help():查看集合方法

show dbs :查看所以库

use 库名 切换库,库不存在就自动创建它

db.getName() :查看当前操作库的名称

 

添加数据:

mongodb中存储数据的格式是文档格式,以bson格式的文档形式

添加数据:
db.集合.insert();



#例
db.集合.insert({name:'xxx',sex:'nv',age:18})



 

多维数据添加:

 



#例
db.集合.insert({name:'xxx',age:20,area:{city:'beijing'}})



查询数据:

db.集合名称.find(查询条件)  取出符合条件的所有

db.集合名称.findOne(查询条件)  取出符合条件的第一条,并且以格式化形式返回

1.条件限制查询



#例
db.集合.find({name:'xxx'})

db.集合.findOne({name:'xxx'});



2.范围条件查询:

在mysql中常用 < > <= >= 进行范围内的查找,在mongodb中用

$lt $gt $lte $gte  进行限制



#例
db.集合.find({age:{'$lt':20}})



3.多个条件查询:

类似与and



#例
db.集合.find({age:{'$lt':20},monry:{'$lte':20000}})



4.多维字段查询:

db.集合.find({'xxx.xx':xxx});



#例
db.集合.find({'area.city':'beijing'});



5.数组条件查询:



#例 满足查询条件所有的才可显示
db.集合.find({xxx:{'$all':['xxx','xxx']}})



6.限制查询字段:

在开发过程中,不需要查询并显示太多的字段,可以选择设定显示

db.集合.find({查询条件},{筛选条件});



#例
db.集合.find({xxx:{'$all':['xxx','xxx']}},{xxx:1,xxx:0})



7.$or查询:

满足一个条件就可以显示



#例
db.集合.find({'$or':[{price:{'$gt':500}},{num:{'$gte':100}}]});



8.count语法:

db.集合.count() 

限制条件:



#例
db.集合.find({num:{'$gt':50}}).count();
#或
db.集合.count({num:{'$gt':50}});



9.limit语法 skip语法:

类似于mysql中的limit(skip,length)语法

limit() 取几个

skip() 跳过几个



#例
db.集合.find().limit(1);

db.集合.find().skip(1).limit(1)



修改数据:

语法:db.集合.update({查询条件},{修改条件})

db.集合.updateOne({查询条件},{修改条件})



#例
db.集合.update({name:'xxx'},{'$set':{price:5554}})

db.集合.updateOne({name:'xxx'},{'$set':{price:5554}})



如果没有$set关键字语法,把设置的字段进行修改,没有设置的就会被删除掉

删除数据:

db.集合.remove({查询条件})

db.集合.deleteOne({查询条件})

db.集合.deleteMany({查询条件})

删除字段:

可以删除某个字段的操作,使用的是update语法的$unset



#例 值随便给一个
db.集合.update({name:'xxxx'},{'$unset':{xxx:0}})



mongodb账号权限:

切换到admin库,进行用户创建

db.createUser({user:'用户名',pwd:密码",roles:['root']})

db.shutdownServer():关闭mongod服务

 

 

PHP中操作mongodb:

linux下在php.ini中开启extension=mongo.so加载扩展,需要提前编译好mongo扩展

win下将php_mongo.dll扩展放在ext中,在php.ini里开启extension=php_mongo.dll扩展

 需要示例化mongoclient 扩展类,构造方法参数传“mongodb://ip”,



#例
#连接mongodb
$mongo=new MongoClient('mongodb://192.168.0.0')



权限的账号:



#例
#端口号 设置的27017
$mongo=new MongoClient('mongodb://账号名:密码@192.168.0.0:2017/admin')



 

 

加载数据库:



#例
$database=$mongo->要加载的库名



选择集合(也就是数据表)



#例
#选择集合
$collection = $database->集合;



 

查询数据:



#例
$collection -> find(array('name'=>'xioming'),array('_id'=>0));



修改数据:

 



#例 前面是查询条件,后面是修改数据
$collection->update(array('name'=>'xiaoming'),array('$set'=>array('age'=>19)))



 

删除数据:

 

 



#例
$collection->remove(array('name'=>'xiaoming'));



 

 

未完待续~~~~~~~~