备忘录:
学习,即可。
Part 1 名词
1. MongoDB
MongoDB是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。
MongoDB旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB是一个面向文档存储的数据库,操作起来比较简单和容易。
2. MongoDB基础关系
一个MongoDB实例可以创建多个数据库。
一个数据库可以创建多个集合。
一个集合可以包括多个文档。
一个文档可可以包括多个数据字段。
一个MongoDB文档类似于JSON对象。
3. 可视化工具
Studio 3T
4. 命令行工具
安装目录中,../bin目录中,启动mongo.exe即可。
5. 启动
安装目录中,../bin目录中,启动mongod.exe即可。
6. 数据目录
../MongoDB/Server/4.0/data
7. 日志目录
../MongoDB/Server/4.0/log
8. 配置信息
../bin目录中,mongod.cfg编辑即可。
9.下载
MongoDB 官方下载地址:https://www.mongodb.com/download-center/community
MongoDB Windows系统64位下载地址:http://www.mongodb.org/dl/win32/x86_64
MongoDB Windows系统32位下载地址:http://www.mongodb.org/dl/win32/i386
MongoDB 全部版本下载地址:http://www.mongodb.org/dl/win32
10. MongoDB与RDMS(关系型数据库管理系统)类似对应关系
MongoDB : RDMS
数据库 : 数据库
table(表) : collection(集合)
row(一行记录) : document(文档)
column(列字段) : field(域)
index(索引): index(索引)
table joins(表连接) : MongoDB不支持表连接
primary key(主键) : primary key(MongoDB自动将_id字段设置为主键)
11.常用命令
use demoDB 创建数据库或者切换数据库,其中demoDB数据库名称
show dbs 查询全部数据库
db 显示当前数据库
show collections 查看数据库下集合
show tables 查看数据库下集合
12.本例测试版本
mongodb-win32-x86_64-2008plus-ssl-4.0.17-signed
Part 2 MongoDB可视化工具Studio 3T的使用
1. 安装Studio 3T
使用熟悉途径下载,即可。正版付费,免费使用30天。
比如官网:https://studio3t.com/
2. 打开Studio 3T,在首页点击Connect
3. 在Connection Manager页,点击New Connection
4. 在New Connection页,输入相应连接信息
可以点击,Test Connection进行测试连接是否成功,再保存。
5. 在Connection Manager页,点击Connect
6. 在首页如下,有新建信息
7. 创建数据库
8. 输入数据库名称
9. 在首页如下,有新建的数据库
10. 在首页,点击IntelliShell,进入命令行
11. 在首页,命令行窗口
12. 在girlInfo集合中插入一个文档
db.girlInfo.insertOne({"GIRL_ID":"202003328","GIRL_NAME":"Yao","AGE":"28" ,"HEIGHT":"162" ,"CUP_SIZE":"B"})
13. 查出girlInfo集合中文档
db.collection.find()
Part 3 MongoDB基本操作
以girlInfo集合进行操作,句法中使用的girlInfo出现位置就是集合出现位置。
1. 创建集合
db.createCollection("girlInfo")
db.createCollection("girlInfo", { capped : true, autoIndexId : true, size : 6142800, max : 1000 } )
插入是自动创建集合
db.girlInfo.insertOne({"GIRL_ID":"202003328","GIRL_NAME":"Yao","AGE":"28" ,"HEIGHT":"162" ,"CUP_SIZE":"B"})
2. 删除集合
db.girlInfo.drop()
也可以可视化界面删除。
3. 插入文档
插入一个文档
db.girlInfo.insertOne({"GIRL_ID":"202003328","GIRL_NAME":"Yao","AGE":"28" ,"HEIGHT":"162" ,"CUP_SIZE":"B"})
插入多个文档
db.girlInfo.insertMany([
{"GIRL_ID":"202003326","GIRL_NAME":"Yao","AGE":"28" ,"HEIGHT":"162" ,"CUP_SIZE":"B"},
{"GIRL_ID":"202003325","GIRL_NAME":"Yao","AGE":"28" ,"HEIGHT":"162" ,"CUP_SIZE":"B"}])
4. 查询
全部查询
db.girlInfo.find()
条件查询
db.girlInfo.find({"GIRL_ID":"202003326"})
复杂查询
5. 更新
update单个
db.girlInfo.updateOne(
{ "GIRL_ID":"202003326"
},{
$set:{
"CUP_SIZE":"C",
"HEIGHT":"168"
},
$currentDate:{
lastModified: true
}
})
update多个
db.girlInfo.updateMany(
{ "CUP_SIZE":{$gt : "A"}
},{
$set:{
"CUP_SIZE":"D",
"HEIGHT":"168"
},
$currentDate:{
lastModified: true
}
})
6. 删除
删除一个
db.girlInfo.deleteOne({"GIRL_ID":"202003329"})
删除多个
db.girlInfo.deleteMany()
7. 删除数据库
db.dropDatabase()
Part 4 数据
1.JSON对象数据格式
{
"AGE": "28",
"CUP_SIZE": "B",
"GIRL_ID": "202003328",
"GIRL_NAME": "Yao",
"HEIGHT": "162"
}
2. RDMS中建表语句(Mysql)
CREATE TABLE `t_girl_mg` (
`GIRL_ID` BIGINT(64) DEFAULT NULL COMMENT 'ID号',
`GIRL_NAME` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL COMMENT '姓名',
`AGE` BIGINT(16) DEFAULT NULL COMMENT '年龄',
`HEIGHT` DOUBLE DEFAULT NULL COMMENT '身高',
`CUP_SIZE` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL COMMENT '罩杯'
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='女孩信息'
以上,感谢。