zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    CMMI学习系列(1)CMMI简介及证书介绍
    Lync 2010 系统架构 学习笔记(2)
    Lync 2010 标准版 AD控制器搭建 学习笔记(3)
    云计算 学习笔记(4) HDFS 简介及体系结构
    云计算 学习笔记(1) Hadoop简介
    Lync 2010 Lync客户端测试 学习笔记(7)
    Lync 2010 监控服务器配置 学习笔记(8)
    CMMI学习系列(7)组织过程库,预评估,正式评估。
    CMMI学习系列(5)CMMI3过程规范制定
    CMMI学习系列(6)项目试点
  • 原文地址:https://www.cnblogs.com/liuzhen1995/p/7771014.html
Copyright © 2011-2022 走看看