这节课主要学习了NOSQL和有关mongodb的基本知识和基本操作
首先是NOSQL
NOSQL是一种非关系型的数据库。随着互联网的兴起,传统的关系数据库在许多大规模数据处理面前已经显得力不从心,而非关系型数据库的产生解决了该类问题。NOSQL全称not only SQL,此处注意NO SQL并不是指非SQL。
SQL分为四大类,分别是
1.键值(Key-Value)存储数据库
2.列存储数据库
3.文档型数据库
4.图形(Graph)数据库
详情可以到这位大神这里看看
http://blog.csdn.net/qq_30843221/article/details/71683310
其次是mongodb
mongodb是一个基于分布式文件存储的数据库,其将数据存储为一个文档,每一个数据由基本的键值(key,value)对组成。
以下是mongodb的一些基本操作
首先是在python上安装mongodb,打开终端,输入
sudo apt-get install mongodb
安装成功之后可以选择关闭终端,打开新的终端窗口键入mogodb,进入操作界面,新手的话可以键入help查看关于mogodb的一些基本命令
这里先说一下集合和数据库的关系,多个文档构成集合,多个集合组成数据库。一个MongoDB实例可以承载多个数据库,每个数据库可以拥有0到多个集合。
一下是一些基本的操作命令
use yourDB; //切换/创建数据库
show dbs;//查询所有数据库
db.dropDatabase();//删除当前使用数据库
db.getName();//查看当前使用的数据库
show collections;查看文档集合
db.createCollection(“文档名”, {“name”: “ ”});//创建文档集
db.文档名.insert({“name”:” ”});//插入新建
db.文档名.drop();//删除文档
关于文档记录的增删查改
(1)增加记录:
db.文档名.insert({“name”: “myname”, “age”: 20, “area”: “st”});
(2)查询记录:
通用的查找: db.文档名.find().pretty();
特定查找: db.文档名. find({“name”: “myname”});
模糊查询: db.文档名.find({“name”: /my/”})
(3)修改记录:
db.collection.update(criteria, objNew, upsert, multi)
criteria: update的查询条件, 类似sql update 查询内where 后面的;
objNew: update 的对象和一些更新的操作符等,也可以理解为sql update查询内set后面的
upset: 这个参数的意思是, 如果不存在update的记录, 是否插入objNew, true为插入, 默认是false, 不插入.
Multi: mongodb默认是false, 只更新找到的第一条记录, 如果这个参数为true, 就把按条件查出来多条记录全部更新.
例子:db.文档名.update({"age" : 20},{set:{"name":" "}},false, false);
(4)删除记录:
db.文档名.remove({"area":"gd"});