通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作

首先 你需要安装Studio 3T 以及启动 Mongodb服务 具体可以参考我的文章 Studio 3T客户端连接Mongodb数据库服务
我们之前 通过

use 数据库名

随便输切换是可以的 但除了这里能看到的 它们都仅存在于内存
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第1张图片
我们右键顶部菜单 选择 添加数据库/创建数据库
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第2张图片
这里 我们输入数据库名称 然后 点击OK
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第3张图片
这样 我们创建的数据库就出来了
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第4张图片
有了数据库 用MySql这种关系型数据库的逻辑 应该就要建表了 但这里不叫表 叫集合

这里 我们双击点开自己创建的数据库目录
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第5张图片
我们右键下面的 Collections 目录 选择 添加一个集合 如下图
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第6张图片
我们输入一下集合的名称 然后点击创建
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第7张图片
然后 我们双击打开它
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第8张图片
我们 右键自己创建的集合 然后选择 Open Intellishell
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第9张图片
这个 界面 默认就有一个查询此集合的语句

db.getCollection("Book").find({})

我们点击这里的绿色箭头 运行代码 但是目前 我们集合中没有数据
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第10张图片
那么 安装mysql这些关系型数据库的思维 我们应该添加一条数据 这里叫添加文档 这里都是文档

我们改写代码如下

db.getCollection("Book").insertOne({
    "name": "springboot"
})

指定 Book 表 insertOne 指令 里面写的有点像一个json 但它叫 Bson 它有自己的格式 我们点击运行代码
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第11张图片
这里 他就加入了一组数据了

然后 我们重写运行查询语句

db.getCollection("Book").find({})

这下面 就能看到一个文档了 id是自动生成的 然后 name对应值 springboot
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第12张图片
我们再来一条

db.getCollection("Book").insertOne({
    "name": "springboot"
})

通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第13张图片
目前查看就是两条
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第14张图片
然后 可能 一个name 满足不了我们的业务
这样加一条

db.getCollection("Book").insertOne({
    "name": "猫猫",
    "age": 13,
    "type": "已读"
})

加了新的 age type字段

运行 OK
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第15张图片
然后 我们再查一下

db.getCollection("Book").find({})

你会发现 它很神奇 既然支持没有的字段 跟着文档加进来
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第16张图片
这就是所谓的无模式 并没有很固定的模式

然后 这个 getCollection 其实我们可以简化 例如

db.Book.find({})

db 后面直接点 集合名 也是OK的
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第17张图片
然后 我们如果要过滤性查询 这里会比关系型数据库方便很多 不需要些什么逻辑运算符
例如 我们要查 age == 13 的 可以直接

db.Book.find({
    "age": 13
})

直接在参数中 Bson 传入 键值名 和值 就OK了
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第18张图片
删除的方法 叫 remove
我们就删除 age == 13的

db.Book.remove({
    "age": 13
})

运行代码
编辑器给我们返回的状态 1.0 true 明显是成功了
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第19张图片
这里我们整体查询一下

db.Book.find({})

最新加的一条数据 显然是没了
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第20张图片
这里需要注意 Mongodb 中 如果你remove不加条件 那就真成从删库到跑路了啊

然后 修改 我们可以这样写

db.Book.update(
    { "name": "springboot" },
    { $set: { "name": "java基础" } }
)

第一个是条件 name 要等于 springboot 然后 $set 中是要改的东西 我们将name 内容改成 java基础
运行代码 状态返回是成功的
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第21张图片
然后 我们查询语句

db.Book.find({})

你会发现 他只改了一条
因为 update 值会改第一个达到条件的文档 一个达到 就不走了
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第22张图片
如果要改多条 需要 updateMany
我们先给他改回去

db.Book.update(
    { "name": "java基础" },
    { $set: { "name": "springboot" } }
)

执行成功后查询一下

db.Book.find({})

通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第23张图片
OK 然后我们执行

db.Book.updateMany(
    { "name": "springboot" },
    { $set: { "name": "java基础" } }
)

true 表示成功 然后 操作行数 明显变成了 2.0
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第24张图片
然后重新查询

db.Book.find({})

通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第25张图片
我们想在这上面写注释 直接

//注释内容

就好了
通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作_第26张图片

你可能感兴趣的:(数据库,mongodb,oracle)