美文网首页
使用pymongo操作MongoDB 2018-10-17

使用pymongo操作MongoDB 2018-10-17

作者: Mr_Du_Biao | 来源:发表于2018-10-17 22:49 被阅读0次
首先导入链接数据库
import pymongo

mongo_client = pymongo.MongoClient(host="127.0.0.1",port=27017)

mongo_db = mongo_client["S12DAY117"]  # "S12DAY117"数据库名称
查询
res = mongo_db.user.find()  # 得到的RES 是一个生成器
print(res)
for i in res:
    print(i)
res = mongo_db.user.find_one({"name":"yinwangba"})
print(res)

得到的值res是一个生成器可以通过枚举得到索引和值
for index,item in enumerate(res.get("course")):

插入
res = mongo_db.chat.insert_one({})
res = mongo_db.chat.insert_many([{},{},{}])
print(res,res.inserted_ids)

res.inserted_ids 得到的是insert_many的多个_id,是ObjectId类型的
res.inserted_id 得到的是insert_one的_id,是ObjectId类型的

更改
res = mongo_db.user.update_one({"name":"jinwangba"},{"$set":{"age":888}})
res = mongo_db.user.update_many({"age":{"$gte":0}},{"$set":{"age":888}})
print(res,dir(res),res.modified_count)

res.modified_count 可以得到改了几个值

删除
res = mongo_db.user.delete_one({"name":"xiaozhuer"})
res = mongo_db.user.delete_many({})
print(res,dir(res),res.deleted_count)

res.deleted_count 可以得到删除几个值

python 实现批量更改
res = mongo_db.user.find_one({"name":"mjj"})
print(res)

for index,item in enumerate(res.get("course")):
    if res.get("course")[index]["course_name"] == "Python":
        res.get("course")[index]["course_name"] = "Django Web框架"

    if res.get("course")[index]["course_name"] == "Vue.js":
        res.get("course")[index]["course_name"] = "Flask Web框架"

    if res.get("course")[index]["course_name"] == "MySQL":
        res.get("course")[index]["course_name"] = "MongoDB"


res = mongo_db.user.update_one({"name":"mjj"},{"$set":res})

相关文章

网友评论

      本文标题:使用pymongo操作MongoDB 2018-10-17

      本文链接:https://www.haomeiwen.com/subject/chydzftx.html