使用robo3t操作mongodb以及文档的插入、更新、删除以及查询操作

一、实验综述
1、实验目的及要求
(1)学会Robo3T的环境搭建和使用;
(2)掌握Robo3T连接并操作MongoDB
(3)熟悉数据库和集合操作;
(4)掌握文档的插入、更新、删除以及查询操作。
实验过程:
1、登录MongoDB客户端,创建数据库articledb
2、创建集合comment,通过隐式方式向集合中插入4条文档,内容如下:
①"articleid":“100000”,“content”:“今天天气真好,阳光明媚”,“userid”:“1001”,“nickname”:“Rose”,“age”:“20”,“phone”:“18807141995”,“createdatetime”:new Date(),“likenum”:NumberInt(10),“state”:null
②"articleid":“100000”,“content”:“我们应该去太阳岛露营野餐”,“userid”:“1001”,“nickname”:“Rose”,“age”:“20”,“phone”:“18807141995”,“createdatetime”:new Date(),“likenum”:NumberInt(10),“state”:null
③"articleid":“100000”,“content”:“如果天气突然下雨,我们就惨了”,“userid”:“1002”,“nickname”:“Jack”,“age”:“22”,“phone”:“18807160000”,“createdatetime”:new Date(),“likenum”:NumberInt(888),“state”:1
④"articleid":“100000”,“content”:“我们可以带上雨伞这样就好了”,“userid”:“1003”,“nickname”:“Tom”,“age”:“19”,“phone”:“16707157995”,“createdatetime”:new Date(),“likenum”:NumberInt(909),“state”:2
3、以易读(pretty())的方式查看所有文档;
4、查询集合comment中同时满足userid为1001和nickname为Rose的文档;
5、查询集合comment中满足userid大于等于1002的文档;
6、查询集合comment中评论内容content值以“我们”开头的文档;
7、使用Robo3T连接MongoDB并查询所有文档内容;
8、使用Robo3T向集合comment中插入一条文档(内容自拟),然后将该条文档删除
认真完成实验题,能正确运行,提交实验报告并上传程序,实验报告要求写出操作步骤、结果、问题、解决方法、体会等。
2、实验仪器、设备或软件
计算机、Robo3T、Linux、VMvare15pro、Secure CRT、MongoDB4.2、相关的操作系统等。
二、实验过程(实验步骤、代码、数据、过程截图)
1、登录MongoDB客户端,创建数据库articledb,并创建集合comment。如下图2-1、图2-2所示。代码: **
use articledb
db.createCollection(“comment”)
**
在这里插入图片描述

图2-1登录MongoDB客户端
在这里插入图片描述

图2-2创建数据库articledb,并创建集合comment
2、通过隐式方式向集合中插入4条文档。如下图2-3、2-4、2-5、2-6所示。
代码为:

**① user1={“articleid”:“100000”,“content”:“今天天气真好,阳光明媚”,“userid”:“1001”,“nickname”:“Rose”,“age”:“20”,“phone”:“18807141995”,“createdatetime”:new Date(),“likenum”:NumberInt(10),“state”:null}

②  user2={“articleid”:“100000”,“content”:“我们应该去太阳岛露营野餐”,“userid”:“1001”,“nickname”:“Rose”,“age”:“20”,“phone”:“18807141995”,“createdatetime”:new Date(),“likenum”:NumberInt(10),“state”:null}

③ user3={“articleid”:“100000”,“content”:“如果天气突然下雨,我们就惨了”,“userid”:“1002”,“nickname”:“Jack”,“age”:“22”,“phone”:“18807160000”,“createdatetime”:new Date(),“likenum”:NumberInt(888),“state”:1}

④ user4={“articleid”:“100000”,“content”:“我们可以带上雨伞这样就好了”,“userid”:“1003”,“nickname”:“Tom”,“age”:“19”,“phone”:“16707157995”,“createdatetime”:new Date(),“likenum”:NumberInt(909),“state”:2}

⑤ db.comment.insert(user1)
⑥ db.comment.insert(user2)
⑦ db.comment.insert(user3)
⑧ db.comment.insert(user4)**
在这里插入图片描述

图2-4插入第4条文档

在这里插入图片描述

图2-5添加文档到集合

在这里插入图片描述

图2-3插入前3条文档
在这里插入图片描述

图2-6在navicat下看出加入成功
3.以易读pretty()的方式查看所有文档,如图2-7所示:
代码为:db.comment.find().pretty()

在这里插入图片描述

图2-7以易读pretty()的方式查看所有文档
4.查询集合comment中同时满足userid为1001和nickname为Rose的文档,图2-8所示:
代码为: db.comment.find({“userid”:“1001”,“nickname”:“Rose”}).pretty()
在这里插入图片描述

图2-8查询集合comment中同时满足userid为1001和nickname为Rose的文档
5.查询集合comment中满足userid大于等于1002的文档,图2-9所示:
代码为: db.comment.find({“userid”:{$gte:“1002”}}).pretty()

在这里插入图片描述

图2-9查询集合comment中满足userid大于等于1002的文档
6.查询集合comment中评论内容content值以“我们”开头的文档,如图2-10所示;
代码为:db.comment.find({content:{$regex:“^我们”}}).forEach(printjson)

在这里插入图片描述

图2-10查询集合comment中评论内容content值以“我们”开头的文档
7.使用Robo3T连接MongoDB并查询所有文档内容,如图2-11所示:
在这里插入图片描述

图2-11使用Robo3T连接MongoDB并查询所有文档内容
8.使用Robo3T向集合comment中插入一条文档(内容自拟),然后将该条文档删除,如图2-12、2-13、2-14、2-15所示。
代码:
db.comment.insert({user_id=”20044310”,user_name=”李嘉远”,user_pwd=”20044310”})
db.comment.remove({user_id:“20044310”})
在这里插入图片描述

图2-12使用Robo3T连接MongoDB并查询所有文档内容
在这里插入图片描述

图2-13使用Robo3T连接MongoDB并查询所有文档内容
在这里插入图片描述

图2-14使用Robo3T文档删除

2、分析讨论
① MongoDB 创建数据库的语法格式如下:
use DATABASE_NAME
如果数据库不存在,则创建数据库,否则切换到指定数据库。
② MongoDB 删除数据库的语法格式如下:
db.dropDatabase()
③ 删除当前数据库,默认为 test,你可以使用 db 命令查看当前数据库名。
MongoDB 中使用 createCollection() 方法来创建集合。
语法格式:
db.createCollection(name, options)
④ MongoDB 中使用 drop() 方法来删除集合。
语法格式:
db.collection.drop()
⑤ MongoDB 使用 insert() 或 save() 方法向集合中插入文档,语法如下:
db.COLLECTION_NAME.insert(document)或
db.COLLECTION_NAME.save(document)
⑥ MongoDB 使用 update() 和 save() 方法来更新集合中的文档。
⑦ MongoDB 集合的删除。
MongoDB remove() 函数是用来移除集合中的数据。
MongoDB 数据更新可以使用 update() 函数。在执行 remove() 函数前先执行 find() 命令来判断执行的条件是否正确。

⑧ MongoDB 查询数据的语法格式如下:
db.collection.find(query, projection)
MongoDB中条件操作符有:
(>) 大于 - $gt
(<) 小于 - $lt
(>=) 大于等于 - $gte
(<= ) 小于等于 - $lte

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐