您的位置:首页 > 数据库 > Mongodb

mongoDB 简单操作

2016-07-28 11:32 239 查看
一、新增数据库

use DATABASE_NAME

例如:use tom _database

当tom _database不存在时会新建数据库tom_databse,当tom_database存在时切换到tom_database数据库。当前数据库的名称可以通过db命令查看。

说明:执行上一语句时,数据库并没有立即真实创建,只有向该数据库中插入数据后才会真实创建该数据库。也就是说当执行完上一语句后通过show dbs是看不到tom_database数据库的,只有执行完插入数据后,tom_database才会真实创建。

二、删除数据库

db.dropDatabase()

删除数据库必须切换到该数据库下,并且删除数据库,会将该数据库中的数据一并删除。

例如: use tom_database

            db.dropDatabase()

以上语句中,第一句为切换到要删除的数据库。第二句为将该数据库删除。其中‘db’代表当前使用中的数据库。

三、插入文档

db.COLLECTION_NAME.insert(document)

例如:use tom_database

           db.tom.insert({'name':'tom',age:23,'job':'teacher'}) 

以上语句第一句为切换到tom_database数据库,第二句在tom_database数据库的tom集合中插入文档。‘tom’:为集合名,执行第二句时,会进行判断当tom集合存在时切换到tom集合,当tom集合不存在时创建tom集合。数据库中的集合可以通过show collections查看。{}中的内容即为一个文档。

四、更新文档

db.collection.update(
<query>,
<update>,
{ upsert:
<boolean>, multi:
<boolean>, writeConcern:
<document> })

说明:query : update的查询条件,类似sql update查询内where后面的。update
: update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的语句。upsert
: 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。multi
: 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。writeConcern
:可选,抛出异常的级别。

例如:use tom_database

          db.tom.update({''name":'tom'},{$set:{age:30,'job':'worker'}},true,true)

上面第二句{'name:tom'}为查询条件,$set: 为更新内容,第一个true为当查询不到name:tom的文档时,插入该文档,不写则默认为false;第二个true,为更新所有符合条件的文档,默认为false,若为false只更新第一个符合查询条件的文档。

五、删除文档

db.collection.remove(
<query>,
{ justOne:
<boolean>, writeConcern:
<document> })

说明:query:查询条件,justOne:为true或者1时只删除一个文档,默认为false当为false时删除所有符合条件的文档,writeContent:同update。

例如:use tom_database

          db.tom.remove({'name':'tom'},true)

以上语句时删除tom_database数据库中,tom集合下的name为tom查询结果的第一个文档。

六、查询文档

db.COLLECTION_NAME.find() 

db.COLLECTION_NAME.find().pretty()

查询文档有以上两条语句,结果一样只是显示效果不同。第二条是以用户友好模式显示。

例如:use tom_database

          db.tom.find()

查询tom集合中的所有文档。

条件查询:

db.COLLECTION_NAME.find(<query>)

query代表查询条件。

例如:db.tom.find({'name':tom})

查询tom集合中所有name为tom的文档

例如


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: