Python MongoDB indsættelse af dokument
- Forrige Side MongoDB Opret Samling
- Næste Side MongoDB Find
Dokumenter i MongoDB er ens med poster i SQL-databaser.
indsættelse af samling
For at indsætte en optagelse eller det, vi kalder et dokument, i en samling i MongoDB, bruger vi insert_one()
Metode.
insert_one()
Første parameter til metoden er en dictionary, der indeholder hver feltets navn og værdi, der ønskes indsat i dokumentet.
eksempel
Indsæt en post i "customers"-samlingen:
import pymongo minklient = pymongo.MongoClient("mongodb://localhost:27017/") mindb = minklient["mindatabase"] minkol = mindb["kunder"] mydict = { "name": "Bill", "address": "Highway 37" } x = mycol.insert_one(mydict)
returnerer _id-feltet
insert_one()
metoden returnerer en InsertOneResult-objekt, der har egenskaber inserted_id
bruges til at gemme id'et for de indsatte dokumenter.
eksempel
Indsæt et nyt element i "customers"-samlingen og returner værdien af _id-feltet:
mydict = { "name": "Peter", "address": "Lowstreet 27" } x = mycol.insert_one(mydict) print(x.inserted_id)
Hvis du ikke specificerer _id
felt, så MongoDB tilføjer en for dig og tildeler en unik ID til hver dokument.
I det foregående eksempel blev der ikke specificeret _id
felt, derfor tildeler MongoDB en unik _id til hver optagelse (dokument).
indsættelse af flere dokumenter
For at indsætte flere dokumenter i en samling i MongoDB, bruger vi indsæt_mange()
Metode.
indsæt_mange()
Første parameter til metoden er en liste af dictionaries, der indeholder data, der skal indsættes:
eksempel
import pymongo minklient = pymongo.MongoClient("mongodb://localhost:27017/") mindb = minklient["mindatabase"] minkol = mindb["kunder"] minliste = [ {"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) # Udskriv listen over _id-værdier for de indsatte dokumenter: print(x.inserted_ids)
indsæt_mange()
metoden returnerer et InsertManyResult-objekt, der har egenskaber indsat_ids
bruges til at gemme id'erne på de indsatte dokumenter.
Indsæt flere dokumenter med angivet ID
Hvis du ikke ønsker, at MongoDB skal tildele et unikt id til dine dokumenter, kan du specificere _id-feltet, når du indsætter dokumentet.
Bemærk, værdier skal være unikke. To filer kan ikke have samme _id.
eksempel
import pymongo minklient = pymongo.MongoClient("mongodb://localhost:27017/") mindb = minklient["mindatabase"] minkol = mindb["kunder"] minliste = [ { "_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) # Udskriv listen over _id-værdier for de indsatte dokumenter: print(x.inserted_ids)
- Forrige Side MongoDB Opret Samling
- Næste Side MongoDB Find