1.NOSQL的优势:
- 易扩展
- 大数据量,高性能
- 灵活的数据模型
- 高可用
2.让关系数据库关注在关系上,NoSQL关注在存储上。
3.MongoDB 三元素:
三元素:数据库,集合,文档
4.mongodb的安装:
1.一步步安装,设安装路径 D:\mongodbinstall
2.D:\mongodbinstall 下新建文件夹data, 进入data新建db和log
3.进入D:\mongodbinstall\bin,开cmd,
开服务端:
mongod.exe --dbpath=D:\mongodbinstall\data\db
4.进入D:\mongodbinstall\bin,开cmd,
开客户端:
mongo.exe
5.mongodb可视化工具:
mongochef的安装
6.客户端:
--查看当前数据库名称
db
--连接成功后,默认使用test数据库
--查看所有数据库名称
show dbs
--切换数据库; 如果数据库不存在也并不创建,
-- 直到插入数据或创建集合时数据库才被创建
use 数据库名称
--删除当前指向的数据库,如果数据库不存在,则什么也不做
db.dropDatabase()
7.集合命令
-- 集合操作指令
-- 可以不手动创建集合,向不存在的集合中第一次加入数据时,集合会被创建出来
db.createCollection(name, options)
db.createCollection('stu')
db.createCollection("sub", { capped : true, size : 10 } )
show collections
--删除命令
db.stu.drop()
8.数据的增删改查:
-- 增 insert()
db.集合名称.insert({document})
db.stu.insert({name:'老王',age:18})
-- 查询
-- 参数都是可选的
db.stu.find()
-- 更新
-- update students set name = 'xiaowang' where id > 10;
db.集合名称.update(<query> ,<update>,{multi: <boolean>})
-- 修改年龄为18岁的学生名字为老宋 并且只修改一条
-- 1.改修改方式会修改文档结构 一般不适用
db.stu.update({age:18},{name:'老宋'})
-- 2.指定字段修改 $set
db.stu.update({age:18},{$set:{name:'老宋'}})
-- 修改年龄为18岁的学生名字为老马 修改所有满足条件的文档
db.stu.update({age:18},{$set:{name