MongoDB 学习笔记

111 阅读2分钟

一、创建数据库

user databaseName 使用use 创建或切换数据库,没有数据库名称就创建,有就切换 默认数据库是test

db 显示当前数据库

二、显示数据库

show dbs 显示所有数据库

三、删除数据库

db.dropDatabase()

使用db.dropDatabase()删除当前的数据库

四、创建集合

db.createCollection(name, options)

name 为集合名称,options为可选参数,指定有关内存大小及索引的选项

五、删除集合

db.collection.drop()

如果成功删除选定集合,则 drop() 方法返回 true,否则返回 false。

六、插入文档

MongoDB 使用 insert() 或 save() 方法向集合中插入文档,语法如下:

db.COLLECTION_NAME.insert(document)
或
db.COLLECTION_NAME.save(document)
  • save():如果 _id 主键存在则更新数据,如果不存在就插入数据。该方法新版本中已废弃,可以使用 db.collection.insertOne()  或 db.collection.replaceOne()  来代替。
  • insert(): 若插入的数据主键已经存在,则会抛 org.springframework.dao.DuplicateKeyException 异常,提示主键重复,不保存当前数据。

3.2版本以后新增insertOne和insertMany

db.collcetion.insertOne()向集合里追加一条

db.collection.insertOne(
   <document>,
   {
      writeConcern: <document>
   }
)

db.collection.insetMany()向集合里追加多条

db.collection.insertMany(
   [ <document 1> , <document 2>, ... ],
   {
      writeConcern: <document>,
      ordered: <boolean>
   }
)

七、更新

新增更新updateOne和updateMany方法

db.collection.updateOne(query,document)
  • 更新一个匹配的文档, query为条件,document为待更新值。
  • updateOne 只会更新找到的与筛选条件匹配的第一个文档。如果匹配的文档有多个,它们将不会被更新。
db.collection.updateMany(query,document)
  • 更新多个匹配的文档, query为条件,document为待更新值。

八、查找

新增findOne和findMany

db.collection.findOne(query,optons)
  • 查找一个匹配的文档,query为条件,只返回查到的第一个
  • optons 为可选参数,1为指定返回字段,0 为指定不返回,默认_id 返回
db.collection.findOne(query)
  • 查找匹配的多个文档

九、删除

新增deleteOne和deleteMany

db.collection.deleteOne(query)

-删除满足条件的第一个文档

db.collection.deleteMany(query)

-删除索引符合条件的文档