1、mongDB安装
#拉取镜像
docker pull mongo:latest
#创建和启动容器
docker run -d --restart=always -p 27017:27017 --name mymongo -v /data/db:/data/db -d mongo
#进入容器
docker exec -it mymongo/bin/bash
#使用MongoDB客户端进行操作
mongo
> show dbs #查询所有的数据库
admin 0.000GB
config 0.000GB
local 0.000GB
2、mongDB基本操作命令
2.1、创建数据库(切换/创建数据库)
如果数据库不存在,则创建数据库,否则切换到指定数据库
use huangsiqing
查看show dbs,会发现没有我们创建的数据库,因为操作mongDB需要添加数据
db.hsq.insert({“name”:“菜鸟”})
这时候查看,会发现创建的hsq就算我们的表,而name就是我们的数据
2.2、创建集合(表),删除集合(表)
MongoDB 中使用 createCollection() 方法来创建集合。
方式一:
db.createCollection(name, options)
例如:db.createCollection(“runoob”)
- name: 要创建的集合名称
- options: 可选参数, 指定有关内存大小及索引的选项【可选】
方式二:在 MongoDB 中,你不需要创建集合。当你插入一些文档时,MongoDB 会自动创建集合。
db.mycol2.insert({“name” : “菜鸟”})
MongoDB 中使用 drop() 方法来删除集合。
db.collection.drop()
2.3、插入文档(数据)
方法:
db.COLLECTION_NAME.insert(document)
或
db.COLLECTION_NAME.save(document)
- save():如果 _id 主键存在则更新数据,如果不存在就插入数据。该方法新版本中已废弃,可以使用 db.collection.insertOne() 或 db.collection.replaceOne() 来代替。
- insert(): 若插入的数据主键已经存在,则会抛 org.springframework.dao.DuplicateKeyException 异常,提示主键重复,不保存当前数据。
实例1:插入数据
db.col.insert({title: 'MongoDB 教程',
description: 'MongoDB 是一个 Nosql 数据库',
by: '菜鸟教程',
url: 'http://www.runoob.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
})
参数说明:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cHUvNlEQ-1650533206667)(尚医通/image-20220401191946607.png)]
查看已插入的数据:
db.col.find()
实例2:插入数据
document=({title: 'MongoDB 教程',
description: 'MongoDB 是一个 Nosql 数据库',
by: '菜鸟教程',
url: 'http://www.runoob.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
});
再执行插入命令
db.col.insert(document)
2.4、更新文档(数据)
方式一:update() 方法
update() 方法来更新标题(title):
db.hsq.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}})
发现值更新了一条。如果你要修改多条相同的文档,则需要设置 multi 参数为 true。
db.hsq.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}},{multi:true})
SpringBoot集成MongDB
|