MongoDB的基本用法

  MongoDB已在Ubuntu中安装成功,为便于后续在ASP.NET Core中使用MongoDB,需要学习MongoDB的基本概念及用法。

设置MongoDB服务开机自动启动

  重启Ubuntu后,安装的MongoDB服务不会自动启用,为便于程序连接数据库并进行操作,最好设置MongoDB服务开机自动启动。使用下列命令设置开机自动启动(该命令需要root权限)。

 systemctl enable mongodb.service

基本操作说明

  在etc目录下存在mongod.conf文件,其中指定了MongoDB数据库文件的存放位置。
在这里插入图片描述

  MongoDB数据库使用“use DATABASE_NAME”命令切换数据库,如果数据库不存在,则会创建数据库。例如创建一个存储chart.js图形数据的数据库ChartData,命令及效果如下所示
在这里插入图片描述
  接下来创建存储气泡图数据的集合,MongoDB中的集合对应着关系型数据库中的表,表中存储了很多条记录,而在集合中则存储有很多文档(BSON文档,详见参考文献2)。有两种方式创建集合,第一种是使用db.createCollection(name)的方式创建,第二种是调用db.collection.insertOne() 或db.collection.insertMany()时,如果集合不存在,则自动创建集合。这两种方式的命令及效果如下图所示:
在这里插入图片描述在这里插入图片描述
  上面图形中,使用show collections显示当前数据库中的所有集合,使用db.collection.find().pretty()查看集合中的所有数据。
  使用insertOne命令一次只能向集合中插入一个文档,可以使用insertMany同时插入多个文档,其使用示意如下图所示:
在这里插入图片描述

  MongoDB使用db.collections.drop()来删除集合,其使用示意如下图所示:
在这里插入图片描述
  MongoDB使用下列命令删除集合中的一个或多个文档。

    db.collection.deleteMany()
    db.collection.deleteOne()

  deleteOne命令删除集合中满足条件的第一个文档。
在这里插入图片描述  而deleteMany命令删除集合中满足条件的所有文档。如果deleteMany命令不带参数,则删除集合中的所有文档,
在这里插入图片描述

  MongoDB使用下列命令修改集合中的一个或多个文档。

db.collection.updateOne(<filter>, <update>, <options>)
db.collection.updateMany(<filter>, <update>, <options>)

  updateOne命令将集合中满足条件的第一个文档的相应属性修改为指定的内容,如下图所示。updateMany命令将集合中满足条件的所有文档的相应属性修改为指定的内容,在此就不在赘述。特别说明的是,update参数中需要中$set指定修改后的属性的值,如下图所示。
在这里插入图片描述

  MongoDB使用db.collection.find()命令查询集合中符合条件的文档(pretty() 方法以格式化的方式来显示所有文档),如果没有参数,则返回集合中的所有文档。
在这里插入图片描述

  本文介绍了MongoDB中最基本的一些操作,对MongoDB有了初步的认识,后续还会继续学习MongoDB数据库的使用。

参考文献:
[1]https://docs.mongodb.com/manual/crud/
[2]https://docs.mongodb.com/manual/core/document/#std-label-bson-document-format
[3]https://docs.mongodb.com/manual/core/databases-and-collections/#std-label-collections
[4https://blog.csdn.net/qq_36027670/article/details/79994202
[5]https://blog.csdn.net/qq_33036599/article/details/83061446
[6]https://www.runoob.com/mongodb/mongodb-create-database.html
[7]https://blog.csdn.net/lipei_csdn/article/details/81805400?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link

猜你喜欢

转载自blog.csdn.net/gc_2299/article/details/120895092
今日推荐