use 数据库名称
如果数据库不存在则自动创建
查看有权限查看的所有数据库命令:
show dbs或show databases
注意:在MongoDB中,集合只有在内容插入后才会创建!就是说,创建集合(数据表)后要再插入一个文档(记录),集合才会真正创建。
查看当前正在使用的数据库命令:
db
MongoDB中默认的数据库为test,如果你没有选择数据库,集合将存放在test数据库中。
MongoDB删除数据库的语法格式如下:
db.dropDatabase()
提示:主要用来删除已经持久化的数据库,删除的是当前所在的库。
集合,类似于关系型数据库中的表。
基本语法格式:
db.createCollection(name)
参数说明:name为要创建的集合名
当向集合中插入一个文档,如果文档不存在,就会自动创建集合。
基本语法格式:
show collections
基本语法格式:
db.集合名.drop()
如果成功删除选定集合,则返回true,否则返回false
文档的数据机构和sjon基本一样。所有存储在集合中的数据都是BSON格式。
使用insert()或save()方法向集合中插入文档。语法如下:
db.collection.insert( <document or array of documents>, { writeConcern:<document>, ordered:<boolean> } )
参数
示例:
返回WriteResult({"nInserted" : 1}),则说明插入一条数据成功。
提示:
1.comment集合如果不村子,则会隐式创建
2.mongo中的数字,默认情况下是duuble类型,如果要存整型,必须使用函数NumberInt(整型数字),否则取出来就有问题了。
3.插入当前日期使用new Date()
4.插入的数据没有指定_id会自动生成主键值
5.如果某字段没值,可以赋值为null,或不写该字段。
语法如下:
db.collection.insertMany( [<document 1>,<document 2>,...], { writeConcern:<document>, ordered:<boolean> } )
示例:
查询数据的语法格式如下:
db.collection.find(<query>,[projection])
参数:
示例1:查询集合中的所有文档
db.comment.find()或db.comment.find({})
这里每条文档会有个交_id的字段,这个相当于我们原来关系型数据库中表的主键,当你在插入文档记录时没有指定该字段,MongoDB会自动创建,其类型是ObjectID类型。
示例2:条件查询集合中的文档
在find()中添加参数即可,参数也是json格式,如下:
db.comment.find({"cid":"1"})
如果需要返回符合条件的第一条数据,我们可以使用findOne命令来实现,语法跟find一样
如果要查询机构返回部分字段,则需要使用投影查询(不现实所有字段,只显示指定的字段)。
如果查询全部,只显示部分字段,该字段用json格式1表示。默认_id要显示,如果想排除_id则跟上_id:0
更新文档的语法:
db.collection.update(query,update,options) //或 db.collection.update( <query>, <update>, { upsert:<boolean>, multi:<boolean>, writeConcern:<document>, arrayFilters:[<filterdocument1>,....], hint:<document|string> //available starting in mongodb 4.2 } )
示例:
1.覆盖的修改
执行db.comment.update({"_id":"1"},{"name":"xxx"})后,发现除了name字段外其他字段都没见了。
2.局部的修改
为了解决上面问题,使用修改器$set来实现。
执行db.comment.update({"_id":"2"},{$set:{"name":"xxxx"}}),只修改该文档的name字段的值,不会出现其他字段消失。
3.批量修改
例:更新所有cid为1的用户昵称为xxx
//默认只修改第一条数据 db.comment.update({"cid":"1"},{$set:{"name":"xxx"}}) //修改所有符合条件的数据 db.comment.update({"cid":"2"},{$set:{"name":"xxx"}},{multi:true})
提示:如果不加后面的参数,则只更新符合条件的第一条记录
删除文档的语法结构:
db.集合名词.remove(条件)
以下语句可以将数据全部删除,请慎用
db.集合名称.remove({})
原文:https://www.cnblogs.com/mabaoying/p/12546525.html