python 操作三大主流数据库 第六课MongoDB原生操作
2020-01-12 17:16
579 查看
python 操作三大主流数据库 第六课
tags:
- python3
- 慕课网
categories:
- python3
- mysql
- MongoDB
文章目录
第一节 MongoDB资源介绍数据库介绍
1. MongoDB资源介绍
1. Mongo代表大, 他是一个分布式数据库 2. 中文文档: http://docs.mongoing.com/manual-zh/index.html 3. 英文文档: https://docs.mongodb.com/manual/ 4. MongoDB是一个面向文档的数据库。
2. 文档介绍
1. 什么是文档呢 举例:{"foo": 3, "greeting" :"Hello, world!"} 2. 文档区分大小写, key 不可重复, 键值对是有序的(不像python的字典是无序的) 3. 集合就是一组文档 4. 文档类似于关系库里的行 5. 集合类似于关系库里的表 6. 集合中的文档无需固定的结构(与关系型数据库的区别)
3. 集合的命名规则
1. 不能是空字符串 ( "”) 2. 不能包含\0字符 (空字符) 3. 不能使用system.的前缀(系统保留) 4. 建议不包含保留字“$” 5. 用.分割不同命名空间的子集合(如: blog.users, blog.posts )
4. MongoDB数据库
1. 多个文档组成集合,多个集合组成数据库 2. 一个实例可以承载多个数据库 3. 每个数据库都有独立的权限 4. 保留的数据库名称( admin,local,config )
第二节 MongoDB数据库安装和配置
1. 安装
1. 下载地址:https://www.mongodb.com/download-center/community?jmp=docs 2. 注意要在盘符的根目录下安装。如c:/MongoDB D:/MongoDB
2. 启动
1. windows安装目录下创建DB文件夹 2. 添加环境变量到path中D:\MongoDB\Server\3.4\bin 3. Windows下: mongod.exe --dbpath D:\MongoDB\DB 4. Mac下: mongod --config /usr/local/etc/mongod.conf 5. Linux下: sudo service mongod start 6. 再开一个cmd窗口,输入mongo.就可以操作了
3. 命令行操作数据库
1. 它支持大部分的js语法 2. 查看本地数据库:show dbs; 3. 通过use切换数据库:use admin; 4. 它不需要创建数据库:use student; (如果student数据库不存在自动创建) 5. 增删该查文档:https://docs.mongodb.com/manual/crud/
# 新增数据 use student; stu = { name: 'john', age:12, }; db.student.insert(stu); # 查询数据 db.student.find(); db.student.insert({name: "Alex"}); db.student.find(); db.student.findOne(); # 修改数据 stu_obj = db.student.findOne(); # 先把对象查询出并保存 stu_obj.name = "qinan"; db.student.update({name : "john"}, stu_obj);#实际上用stu_obj直接替换之前内容 db.student.findOne(); # 删除数据 db.student.remove({}); # 删除所有数据 db.student.remove({name: "qinan"}); # 删除一条数据 db.student.find();
4. 练习
1. 创建一个学生信息表(至少包含:姓名,性别,成绩,年龄) 2. 写入十五条不同的数据 3. 查询所有的男生数据(只需要学生的姓名和年龄) 4. 查询成绩及格的学生信息(学生成绩大于或等于60分) 5. 查询所有18岁的男生和16岁的女生的数据 6. 按照学生的年龄进行排序 7. 将所有的学生年龄增加一岁
# 创建一个学生信息表(至少包含:姓名、性别、成绩、年龄) use students; # 写入十五条不同的数据 db.students.insertMany( [ {name: "bob", age:16, gender:"male", grade:95}, {name: "ana", age:18, gender:"female", grade:45}, {name: "xi", age:15, gender:"male", grade:75}, {name: "bob1", age:16, gender:"male", grade:95}, {name: "ana1", age:18, gender:"female", grade:45}, {name: "jack", age:18, gender:"male", grade:85}, {name: "tom", age:19, gender:"male", grade:65}, {name: "lily", age:16, gender:"female", grade:59}, {name: "lucy", age:18, gender:"female", grade:68}, {name: "lilei", age:18, gender:"female", grade:68}, {name: "hanmeimei", age:16, gender:"female", grade:90}, {name: "harry", age:16, gender:"male", grade:81}, {name: "json", age:16, gender:"male", grade:75}, {name: "jim", age:16, gender:"male", grade:36}, {name: "rose", age:16, gender:"female", grade:91}, {name: "moli", age:16, gender:"female", grade:93}, {name: "linda", age:16, gender:"female", grade:96} ] ) # 查询所有的男生数据(只需要学生的姓名和年龄) # 查询所有的男生数据 db.students.find({gender:"male"}) # 数据中只包含性别和年龄 true和1都可以显示0不显示 db.students.find({gender:"male"},{age:true,name:1,_id:0}) # 查询成绩几个的学生信息(学生成绩大于或等于60分) db.students.find({grade :{$gte:60}}) # 查询所有18岁的男生和16岁女生的数据 db.students.find({$or :[{gender:"female",age:16},{gender:"male",age:18}]}) #按照学生的分数进行排序 # 从小到大 db.students.find().sort({grade:1}) # 从大到小,倒序 db.students.find().sort({grade:-1}) # 将所有女生年龄增加一岁 db.students.update({gender:"female"}, {$inc:{age:1}}, {multi:true})
第四节 MongoDB图形化工具操作
1. 下载地址: https://robomongo.org/download 2. 直接安装。
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- 最新Python操作三大主流数据库教程 MySQL/MongoDB/Redis
- python 操作三大主流数据库 第十课Redis原生操作
- python 操作三大主流数据库 第八课 ODM模型操作MongoDB
- python操作三大主流数据库(1)python操作mysql①windows环境中安装python操作mysql数据库的MySQLdb模块mysql-client
- Python操作三大主流数据库
- python中连接三大主流数据库mysql,mongodb,redis
- 最新Python操作三大主流数据库分享
- python 操作三大主流数据库 第九课mongoDB实战
- python 操作三大主流数据库 第十一课 Redis数据库实战网易新闻
- python操作三大主流数据库(2)python操作mysql②python对mysql进行简单的增删改查
- python操作三大主流数据库(3)python操作mysql③python操作mysql的orm工具sqlaichemy安装配置和使用
- python 操作三大主流数据库 第七课python操作MongoDB数据库
- python操作三大数据库(二)--------mongodb
- HBase vs. MongoDB vs. MySQL vs. Oracle vs. Redis,三大主流开源 NoSQL 数据库的 PK 两大主流传统 SQL 数据库
- Python开发工程师 Python操作三大数据库
- 三大主流数据库sql server、mysql、oracle的分页操作
- HBase vs. MongoDB vs. MySQL vs. Oracle vs. Redis,三大主流开源 NoSQL 数据库的 PK 两大主流传统 SQL 数据库
- python 操作 MongoDB 数据库
- python操作mongodb之四cp数据库
- HBase vs. MongoDB vs. MySQL vs. Oracle vs. Redis,三大主流开源 NoSQL 数据库的 PK 两大主流传统 SQL 数据库