mongoDB数据库

it2025-06-06  10

目录

mongoDB数据库常用命令

服务操作

数据库操作

库操作

集合操作

文档操作

条件匹配


mongoDB数据库常用命令

mongoDB数据库的安装和配置:参考https://www.runoob.com/mongodb/mongodb-window-install.html

服务操作

安装:参考安装配置

启动服务:net start MongoDB            ,在每次连接数据的时候都需要启动服务后才可以连接数据库

关闭服务:net stop MongoDB

数据库操作

库操作

进入:mongo

退出:exit

查看展示所有库:show dbs 切换和创建数据库:use 数据库名称       

注:1、有则用(切换),无则增(创建);2、创建好的数据库没有添加数据时,不会保存在库列表中;3、刚进入mongo中时,默认在test数据库下

查看当前所在库:db 

删除库:db.dropDatabases()

集合操作

查看当前数据库的所有集合:show collections

创建集合:db.createCollections('集合name')           注意不要使用函数等有特殊含义的名字

在没有集合的时候插入数据,会自动创建这个集合:如 db.mymongo.insert({nihao:'你好'}) ,当前库中没有mymongo这个集合,当执行这个命令的时候会自动创建这样一个名为mymongo的集合。

删除集合:db.集合name.drop()

文档操作

文档数据:每一条数据就是一个document,一条json,每一条文档都有一个唯一的ObjectId,添加文档时如果不指定_id参数,生成文档的时候会自动添加一个_id给文档。

添加一条文档:db.集合name.insert({document})

db.st.insert({'_id':1,name:'李白',age:61})

添加多条文档:db.集合name.insert([{document1},{document2},...{documentn}])

db.mymongo.insert([ {'_id':3,name:'李白',朝代:'唐'}, {'_id':4,name:'苏轼',朝代:'宋'} ])

查看集合中的所有文档:db.集合name.find()

> db.mymongo.find() { "_id" : ObjectId("5f90490fc94bc9d1ef91e2c2") } { "_id" : 1, "name" : "李白", "朝代" : "唐" } { "_id" : 2, "name" : "苏轼", "朝代" : "宋" } { "_id" : 3, "name" : "李白", "朝代" : "唐" } { "_id" : 4, "name" : "苏轼", "朝代" : "宋" }

格式化显示查找出来的数据:db.name.find().pretty()

查找满足条件的数据:db.name.find({查找条件})

> db.mymongo.find({'_id':3}) { "_id" : 3, "name" : "李白", "朝代" : "唐" } > db.mymongo.find({'name':'李白'}) { "_id" : 1, "name" : "李白", "朝代" : "唐" } { "_id" : 3, "name" : "李白", "朝代" : "唐" }

修改文档:db.name.update(<query查询条件>,<update更新的数据>,{multi:true})

修改一条(只修改符合条件的所有文档中的第一条):db.name.update({查询数据条件},{修改内容})

> db.mymongo.update({'name':'李白'},{朝代:'唐代'}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.mymongo.find() { "_id" : ObjectId("5f90490fc94bc9d1ef91e2c2") } { "_id" : 1, "朝代" : "唐代" } { "_id" : 2, "name" : "苏轼", "朝代" : "宋" } { "_id" : 3, "name" : "李白", "朝代" : "唐" } { "_id" : 4, "name" : "苏轼", "朝代" : "宋" }

指定属性修改:{$set:{属性}}  ,修改$set:中指定的属性内容,不会对一个文档中的所有属性都修改掉

> db.mymongo.update({'name':'苏轼'},{$set:{朝代:'北宋'}},{multi:true}) WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 }) > db.mymongo.find() { "_id" : ObjectId("5f90490fc94bc9d1ef91e2c2") } { "_id" : 1, "朝代" : "唐代" } { "_id" : 2, "name" : "苏轼", "朝代" : "北宋" } { "_id" : 3, "name" : "李白", "朝代" : "唐" } { "_id" : 4, "name" : "苏轼", "朝代" : "北宋" }

更改集合中所有满足条件的所有文档:在最后面加 {multi:true}参数,指定值为true时,表示修改所有符合条件的文档;默认条件下multi值为false,表示只修改第一条符合条件的数据 。

删除文档

删除集合中所有的文档:db.name.remove({})

删除集合中满足条件的所有文档:db.name.remove({数据条件})

仅删除集合中满足条件的第一条文档:在后面加上{justOne:true},justOne的值设为true或1只删除一个文档,不设置或使用默认值false,则删除所有匹配条件文档。

条件匹配

and 条件:{$and:[{数据1},{数据2},...]} or 条件:{$or:[{数据1},{数据2},...]} 不等于:$ne 大于:$gt 小于:$lt 大于等于:$gte 小于等于:$lte

最新回复(0)