Python MongoDB-lägg till dokument

Dokument i MongoDB är lika med poster i en SQL-databas.

Lägg till samling

För att lägga till en post eller vad vi kallar dokument i en samling i MongoDB, använder vi insert_one() Metod.

insert_one() Första parametern för metoden är en词典 som innehåller varje fältnamn och värde som du vill lägga till i dokumentet.

exempel

Lägg till en post i samlingsen "customers":

import pymongo
min klient = pymongo.MongoClient("mongodb://localhost:27017/")
min databas = min klient["min databas"]
min kollektion = min databas["kunder"]
mydict = { "name": "Bill", "address": "Highway 37" }
x = mycol.insert_one(mydict)

Kör Exempel

Returnerar _id-fältet

insert_one() Metoden returnerar ett InsertOneResult-objekt, som har egenskaperna inserted_id,för att spara id för insatta dokument.

exempel

Lägg till ett annat dokument i samlingsen "customers" och returnera värdet för _id-fältet:

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

Kör Exempel

Om du inte anger _id Fält, då lägger MongoDB till ett för dig och tilldelar varje dokument ett unikt ID.

I föregående exempel angavs inte _id Fält, därför tilldelar MongoDB ett unikt _id för varje post (dokument).

Lägg till flera dokument

För att lägga till flera dokument i en samling i MongoDB, använder vi insert_many() Metod.

insert_many() Första parametern för metoden är en lista som innehåller词典,vilket innehåller data som ska läggas till:

exempel

import pymongo
min klient = pymongo.MongoClient("mongodb://localhost:27017/")
min databas = min klient["min databas"]
min kollektion = min databas["kunder"]
min lista = [
  { "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)
# Skriv ut listan över _id-värden för de inskrivna dokumenten:
print(x.inserted_ids)

Kör Exempel

insert_many() metoden returnerar ett InsertManyResult-objekt, som har egenskaper inmatade_id:eranvänds för att spara id: n för de inmatade dokumenten.

Infoga flera dokument med specificerad ID

Om du inte vill att MongoDB ska tilldela ett unikt id till dina dokument kan du specificera _id-fältet vid insertering av dokumentet.

Kom ihåg att värdena måste vara unika. Två filer kan inte ha samma _id.

exempel

import pymongo
min klient = pymongo.MongoClient("mongodb://localhost:27017/")
min databas = min klient["min databas"]
min kollektion = min databas["kunder"]
min lista = [
  { "_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)
# Skriv ut listan över _id-värden för de inskrivna dokumenten:
print(x.inserted_ids)

Kör Exempel