NoSQL数据库在以下的这几种情况下比较适用:
1、数据模型比较简单;
2、需要灵活性更强的IT系统;
3、对数据库性能要求较高;
4、不需要高度的数据一致性;
5、对于给定key,比较容易映射复杂值的环境。
1.MongoDB安装
111.jpg此时,我们看一下装好的文件夹:
C:\Program Files\MongoDB\Server\3.0\bin 加入到系统的path环境变量中
222.png
那么我们就能在系统的任何盘符,使用mongo命令了:
mongo 使用数据库
mongod 开机
mongoimport 导入数据
开机命令
--dbpath就是选择数据库文档所在的文件夹。
也就是说,mongoDB中,真的有物理文件,对应一个个数据库。U盘可以拷走。
一定要保持,开机这个CMD不能动了,不能关,不能ctrl+c。 一旦这个cmd有问题了,数据库就自动关闭了。
所以,应该再开一个cmd。输入
image.png
那么,运行环境就是mongo语法了。
2.mongodb cmd中操作
-
操作数据库
1.清屏
cls
2.查看所有数据库列表
show dbs
3.使用数据库、创建数据库
use taobao
4.如果真的想把这个数据库创建成功,那么必须插入一个数据。
数据库中不能直接插入数据,只能往集合(collections)中插入数据。不需要创建集合,只需要写点语法
db.student.insert({“name”:”xiaoming”});
db.student 系统发现student是一个陌生的集合名字,所以就自动创建了集合
5.删除数据库,删除当前所在的数据库
db.dropDatabase();
-
操作表
1.插入数据,随着数据的插入,数据库创建成功了,集合也创建成功了
db.student.insert({"name":"xiaoming"});
2.我们不可能一条一条的insert。所以,我们希望用sublime在外部写好数据库的形式,然后导入数据库
mongoimport --db test --collection restaurants --drop --file primer-dataset.json
-db test 想往哪个数据库里面导入
--collection restaurants 想往哪个集合中导入
--drop 把集合清空
--file primer-dataset.json 哪个文件
这样,我们就能用sublime创建一个json文件,然后用mongoimport命令导入,这样学习数据库非常方便
3.查找数据,用find。find中没有参数,那么将列出这个集合的所有文档
db.restaurants.find()
4.精确匹配
db.student.find({"score.shuxue":70});
5.多条件查询
db.student.find({"score.shuxue":70 , "age":12})
6.大于条件
db.student.find({"score.yuwen":{$gt:50}});
7.或者。寻找所有年龄是9岁,或者11岁的学生
db.student.find({$or:[{"age":9},{"age":11}]});
8.查找完毕之后,打点调用sort,表示升降排序
db.student.find().sort( { "borough": 1, "address.zipcode": 1 } )
9.分页查询
db.student.find().limit(4).skip(4)
limit 表示要查询的条数
skip表示要略过的条数
10.修改数据:查找名字叫做小明的,把年龄更改为16岁
db.student.update({"name":"小明"},{$set:{"age":16}});
11.修改数据:查找数学成绩是70,把年龄更改为33岁
db.student.update({"score.shuxue":70},{$set:{"age":33}});
12.更改所有匹配项目 {multi: true}
db.student.update({"sex":"男"},{$set:{"age":33}},{multi: true});
13.完整替换,不出现$set关键字了
db.student.update({"name":"小明"},{"name":"大明","age":16});
14.删除数据 删除匹配的多条
db.restaurants.remove( { "borough": "Manhattan" } )
15.删除匹配的一条
db.restaurants.remove( { "borough": "Queens" }, { justOne: true } )
justOne: true 或者 1 表示只删除一条
网友评论