• Python MongoDB 插入文档



    章节


    MongoDB中的文档与SQL数据库中的记录类似。

    插入文档到集合

    要将记录(或MongoDB中所称的文档)插入到集合中,可使用insert_one()方法。

    insert_one()方法的第一个参数是一个字典,包含了要插入的文档中,每个字段的名称和值。

    示例

    在“customers”集合内插入记录:

    myclient = pymongo.MongoClient("mongodb://localhost:27017/")
    mydb = myclient["mydatabase"]
    mycol = mydb["customers"]
    
    mydict = { "name": "John", "address": "Highway 37" }
    
    x = mycol.insert_one(mydict)
    

    返回_id字段

    insert_one()方法返回InsertOneResult对象,该对象有一个inserted_id属性,保存了插入文档的id。

    示例

    在“customers”集合中插入一条记录,并返回_id字段的值:

    mydict = { "name": "Peter", "address": "Lowstreet 27" }
    
    x = mycol.insert_one(mydict)
    
    print(x.inserted_id)
    

    插入文档时,如果没有指定_id,将自动分配一个唯一的id。

    上面的例子中,没有指定_id字段,MongoDB为记录(文档)分配了一个唯一_id。

    插入多个文档

    要将多个文档插入集合,可以使用insert_many()方法。

    insert_many()方法的第一个参数是一个字典列表,包含了要插入的数据:

    示例

    import pymongo
    
    myclient = pymongo.MongoClient("mongodb://localhost:27017/")
    mydb = myclient["mydatabase"]
    mycol = mydb["customers"]
    
    mylist = [
      { "name": "Amy", "address": "Apple st 652"},
      { "name": "Hannah", "address": "Mountain 21"},
      { "name": "Michael", "address": "Valley 345"},
      { "name": "Sandy", "address": "Ocean blvd 2"},
      { "name": "Betty", "address": "Green Grass 1"},
      { "name": "Richard", "address": "Sky st 331"},
      { "name": "Susan", "address": "One way 98"},
      { "name": "Vicky", "address": "Yellow Garden 2"},
      { "name": "Ben", "address": "Park Lane 38"},
      { "name": "William", "address": "Central st 954"},
      { "name": "Chuck", "address": "Main Road 989"},
      { "name": "Viola", "address": "Sideway 1633"}
    ]
    
    x = mycol.insert_many(mylist)
    
    # 打印文档_id值列表:
    print(x.inserted_ids)
    

    insert_many()方法返回InsertManyResult对象,该对象有一个inserted_ids属性,保存了所有插入文档的id

    插入多个具有指定id的文档

    插入文档时,如果不希望MongoDB为文档分配id,可以指定_id字段。

    注意,_id值必须是惟一的,任意两个文档不能具有相同的_id。

    示例

    import pymongo
    
    myclient = pymongo.MongoClient("mongodb://localhost:27017/")
    mydb = myclient["mydatabase"]
    mycol = mydb["customers"]
    
    mylist = [
      { "_id": 1, "name": "John", "address": "Highway 37"},
      { "_id": 2, "name": "Peter", "address": "Lowstreet 27"},
      { "_id": 3, "name": "Amy", "address": "Apple st 652"},
      { "_id": 4, "name": "Hannah", "address": "Mountain 21"},
      { "_id": 5, "name": "Michael", "address": "Valley 345"},
      { "_id": 6, "name": "Sandy", "address": "Ocean blvd 2"},
      { "_id": 7, "name": "Betty", "address": "Green Grass 1"},
      { "_id": 8, "name": "Richard", "address": "Sky st 331"},
      { "_id": 9, "name": "Susan", "address": "One way 98"},
      { "_id": 10, "name": "Vicky", "address": "Yellow Garden 2"},
      { "_id": 11, "name": "Ben", "address": "Park Lane 38"},
      { "_id": 12, "name": "William", "address": "Central st 954"},
      { "_id": 13, "name": "Chuck", "address": "Main Road 989"},
      { "_id": 14, "name": "Viola", "address": "Sideway 1633"}
    ]
    
    x = mycol.insert_many(mylist)
    
    # 打印文档_id值列表:
    print(x.inserted_ids)
    
  • 相关阅读:
    前端CSS-font属性,超链接的美化,css精灵,background综合属性
    iOS App上架流程(2016详细版)
    iOS中使用正则
    iOS开发--JS调用原生OC篇
    iOS开发--OC调用JS篇
    CocoaPods 的简单快速安装方法
    iOS开发小技巧 -- tableView-section圆角边框解决方案
    Mac合并分区
    iOS开发小技巧
    iOS开发中遇到的错误整理
  • 原文地址:https://www.cnblogs.com/jinbuqi/p/11642210.html
Copyright © 2020-2023  润新知