python使用MongoDB

由于在上面的章节中介绍过了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]}}

"""

这些在日常操作中基本就已经够用了,当然,要是遇到上述条件无法实现的,欢迎在下方留言,我们共同学习、共同进步。

猜你喜欢

转载自blog.csdn.net/j123__/article/details/82533150