• Python学习笔记_03:简单操作MongoDB数据库


    目录

    1. 插入文档

    2. 查询文档

    3. 更新文档

    4. 删除文档

     


    1. 插入文档

    # -*- coding: UTF-8 -*-
    import datetime
    from pymongo import MongoClient
    client = MongoClient()
    
    db = client.book
    
    user = {"name": "daming12",
             "pwd": "asdf33",
             "tags": ["mongodb11", "python11", "pymongo11"],
             "date": datetime.datetime.utcnow()}
    
    users = db.user
    user_id = users.insert_one(user).inserted_id
    print ("user id is ", user_id)

    打开MongoBooster查看book数据库中user集合中所有文档信息:

    执行插入操作后,控制台输出信息:

     


    2. 查询文档

    查询出当前数据库中所包含的所有集合:

    # -*- coding: UTF-8 -*-
    import datetime
    from pymongo import MongoClient
    client = MongoClient()
    
    db = client.book
    cur_collection = db.collection_names(include_system_collections=False)
    
    print("cur_collection is :", cur_collection)

     控制台输出信息:

     

    查询数据库集合中具体文档信息:

    # -*- coding: UTF-8 -*-
    import datetime
    from pymongo import MongoClient
    client = MongoClient()
    
    db = client.book
    users = db.user
    #查询全部
    for i in users.find():
        print(i)
    #查询name=liuzhen的
    for i in users.find({"name":"liuzhen"}):
        print(i)
    # 查询name=daming的
    print(users.find_one({"name":"daming"}))

    控制台输出信息:

     


    3. 更新文档

    更新操作语法模板:

    Collection.update(
    
       <query>,    #查询条件
    
       <update>,    #update的对象和一些更新的操作符   {
    
         upsert: <boolean>,    #如果不存在update的记录,是否插入
    
         multi: <boolean>,        #可选,mongodb 默认是false,只更新找到的第一条记录
    
         writeConcern: <document>    #可选,抛出异常的级别。   }
    
    )

    具体更新操作示例:

    # -*- coding: UTF-8 -*-
    import datetime
    from pymongo import MongoClient
    client = MongoClient()
    
    db = client.book
    users = db.user
    
    print users.find_one({"name":"liuzhen"})
    users.update({"name":"liuzhen"},{'$set':{"pwd":"98765432d1"}})
    print users.find_one({"name":"liuzhen"})

    控制台输出信息:

     


    4. 删除文档

    删除操作语句模板:

    Collection.remove(
    
       <query>,    #(可选)删除的文档的条件   {
    
         justOne: <boolean>,    #(可选)如果设为 true 或 1,则只删除一个文档
    
         writeConcern: <document>    #(可选)抛出异常的级别   }
    
    )

    具体删除操作示例:

    # -*- coding: UTF-8 -*-
    import datetime
    from pymongo import MongoClient
    client = MongoClient()
    
    db = client.book
    users = db.user
    
    print "删除前,集合user中所有文档信息:"
    #查询全部
    for i in users.find():
        print(i)
    #删除name=lisi的全部记录
    users.remove({'name': 'daming'})
    
    #删除name=lisi的某个id的记录
    id = users.find_one({"name":"liuzhen"})["_id"]
    users.remove(id)
    print "删除后,集合user中所有文档信息:"
    #查询全部
    for i in users.find():
        print(i)
    #删除集合里的所有记录
    #db.users.remove()

     控制台输出信息:

     

    参考资料:

    1.Python连接MongoDB操作

    2.python操作MongoDB

  • 相关阅读:
    eclipse配置自动提示EXTJS和jQurey
    Java用jdom.jar解析读取XML文件信息
    Hibernate配置XML连接数据库
    【codeforces】ZeptoLab Code Rush 2015 E 跳跃表? D kmp还不错的题
    各种语言版本的输出本身源代码的程序
    原地归并排序
    c/c++ static
    【程序员的自我修养——链接、装载与库】笔记
    【清华大学OS公开课】
    学习需要记录才行啊
  • 原文地址:https://www.cnblogs.com/liuzhen1995/p/7771014.html
Copyright © 2020-2023  润新知