8.3 操作MongoDB数据库
Posted Avention
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8.3 操作MongoDB数据库相关的知识,希望对你有一定的参考价值。
一项权威调查显示,在大数据时代软件开发人员必备的十项技能中MongoDB数据库名列第二,仅次于html5。MongoDB是一个基于分布式文件存储的文档数据库,可以说是非关系型(Not Only SQL,NoSQL)数据库中比较像关系型数据库的一个,具有免费、操作简单、面向文档存储、自动分片可扩展性强、查询功能强大等特点,对大数据处理支持较好,旨在为Web应用提供可扩展的高性能数据存储解决方案。MongoDB将数据存储为一个文档,数据结构由键值(key -> value)对组成。MongoDB文档类似于JSON对象。字段值可以包含其他文档、数组和文档数组。
MongoDB数据库可以到官网下载,安装教程可以自行百度。
Python扩展库pymongo完美支持MongoDB数据的操作,可以使用pip命令进行安装。下面的代码演示了pymongo操作MongoDB数据库的一部分用法,算是抛砖引玉吧,更多的用法可以学习使用Python的利器dir()和help()来获得,或者查阅MongoDB官方文档。
1 import pymongo #导入模块
2
3 client = pymongo.MongoClint(‘localhost‘,27017) #连接数据库,27017是默认端口
4 db = client.students #获取数据库
5 db.collection_names() #查看数据集合名称列表
6 students = db.students #获取数据集合
7 students.find()
8
9 for item in students.find(): #遍历数据
10 print(item)
11
12 wangwu={‘name‘:‘Wangwu‘,‘age‘:20,‘sex‘:‘male‘}
13 students.insert(wangwu) #插入一条记录
14 for item in students.find({‘name‘:‘Wangwu‘}): #指定查询条件
15 print(item)
16
17 students.find_one() #获取一条记录
18 students.find_one({‘name‘:‘Wangwu‘})
19 students.find().count() #获取记录总数
20 students.remove({‘name‘:‘Wangwu‘}) #删除一条记录
21
22 students.create_index((‘name‘,pymongo.ASCENDING)) #创建索引
23
24 students.update({‘name‘:‘Zhangsan‘},{‘$set‘:{‘age‘:25}}) #更新数据库
25
26 students.remove() #清空数据库
27
28 Zhangsan = ‘‘
29 Lisi = ‘‘
30 Wangwu = ‘‘
31 students.insert_many([Zhangsan,Lisi,Wangwu]) #插入多条数据
32
33 for item in students.find().sort(‘name‘,pymongo.ASCENDING): #对查询结果排序
34 print(item)
35
以上是关于8.3 操作MongoDB数据库的主要内容,如果未能解决你的问题,请参考以下文章