简介
MongoDB是一个基于分布式文件存储的数据库,介于关系型数据库和非关系型数据库之间的产品,是非关系型数据库当中功能最丰富,最像关系型数据库的。
数据库开机
打开cmd窗口输入此命令-
mongod --dbpath 文件夹路径
启动成功之后出现了 port 27017
则表示数据库启动成功,
之后这个数据库启动的cmd命令窗口不能关闭
。因为数据库也是服务,关闭之后就停止了。
MongoDB文件夹存放的都是真实的物理数据,如果别人要用,直接拷贝走即可
MongoDB的增删改查语句
此时打开一个新的cmd窗口,输入mongo
,数据库就启动了,之后就输入mongodb的语句
列出所有数据库
show dbs
admin local 系统数据库
创建并使用数据库
use school
查看当前所在数据库
db
创建集合
db.createCollection("student")
列出当前数据库所有集合
show collections
删除当前数据库
清空当前所在的数据库(慎用
),不会有任何提示
db.dropDatabase ()
添加单条数据
db.student.insert({"name":"yaya","age":18})
添加的数据为键值对的形式,当插入的集合不存在时,系统自动创建集合。
添加多条数据
db.student.insertMany([{"name":"张三","age":19},{"name":"李四","age":20}])
导入数据,一定是重新打开一个新的cmd命令窗口,操作完成关闭即可
mongoimport --db 数据库名称 --collection 集合名称 (--drop)(是否清空当前集合) --file文件路径
删除数据
单条数据:
db.student.remove({"name":"yaya"})
db.student.remove({"name":"yaya"},1)
多条数据:
db.student.remove()
修改数据
替换:
db.student.update({"name":"张三"},{"name":"丁一"})
修改:db.student.update({"name":"张三"},{$set:{"name":"丁一"}})
查找数据
查询所有数据:
db.student.find()
指定条件查询:
db.student.find({"name":"jack"})
查询年龄大于18:
db.student.find({"age":{$gt:18}})
查询年龄小于18:
db.student.find({"age":{$lt:18}})
查询名为yaya的或者年龄为24的:
db.student.find({$or:[{"name":yaya},{"age":24}]})
排序
1时升为序,-1时为降序
db.student.find().sort({"age":1,"score.math":-1})
分页
一页只显示5条数据,page = 0
0:1~5 db.student.find().limit(5)
1:6~10 db.student.find().limit(5).skip(5)
2: db.student.find().limit(5).skip(10)
db.student.find().limit(5).skip(page * 5)
limit(num) 读取几条数据
skip(num) 过滤几条数据