由于在上面的章节中介绍过了MongoDB数据库的操作,在python是操作大致相同,所以就长话短说,简单的讲讲增删改查。
首先,还是需要安装库,老方法:‘pip install mymongo’。
导入库
import pymongo
创建数据库与集合
client = pymongo.MongoClient(host='localhost',port=27017)
#创建数据库 test
db = client.test
#创建数据库中的集合 students
collection = db.students
创建几条数据
student1 = {
'id':'001',
'name':'小明',
'age':15,
'gender':'male'
}
student2 = {
'id':'002',
'name':'小红',
'age':20,
'gender':'male'
}
student3 = {
'id':'003',
'name':'小王',
'age':20,
'gender':'male'
}
student4 = {
'_id':'00004',
'id':'004',
'name':'小红',
'age':20,
'gender':'male'
}
student_update = {
'id':'003',
'name':'小王八',
'age':55,
'gender':'male'
}
添加数据
#添加数据,如果不指定'_id'字段,系统会默认生成一个objectId
collection.insert(student4)
查找数据
#find查找并返回符合条件的多个结果,查询条件使用字典指定,可以使用多个字段
result = collection.find({"age":20})
# 返回一个游标,游标相当于一个迭代器,抽取查询结果,可使用next()获取一个结果
for i in result:
print(i)
更新数据
#更新数据,'upsert'为True:如果找到就更新,找不到就插入
#$set为mongodb内置函数,覆盖原始数据
collection.update({'id':'003'},{'$set':student_update},upsert=True)
删除数据
#删除数据
collection.remove({'id':'002'})
最后,写几个查询条件的内置函数
"""
$lt小于 {'age':{'$lt':20}}
$gt大于 {'age':{'$gt':20}}
$lte小于等于 {'age':{'$lte':20}}
$gte大与等于 {'age':{'$gte':20}}
$ne不等于 {'age':{'$ne':20}}
$in在范围内 {'age':{'$in':[20,30]}}
$nin不在范围内 {'age':{'$nin':[20,30]}}
"""
这些在日常操作中基本就已经够用了,当然,要是遇到上述条件无法实现的,欢迎在下方留言,我们共同学习、共同进步。