Python MongoDB - แทรกเอกสาร

คุณสามารถจัดเก็บเอกสารลงใน MongoDB โดยใช้เมธอดinsert () วิธีนี้ยอมรับเอกสาร JSON เป็นพารามิเตอร์

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ของวิธีการแทรก

>db.COLLECTION_NAME.insert(DOCUMENT_NAME)

ตัวอย่าง

> use mydb
switched to db mydb
> db.createCollection("sample")
{ "ok" : 1 }
> doc1 = {"name": "Ram", "age": "26", "city": "Hyderabad"}
{ "name" : "Ram", "age" : "26", "city" : "Hyderabad" }
> db.sample.insert(doc1)
WriteResult({ "nInserted" : 1 })
>

ในทำนองเดียวกันคุณยังสามารถแทรกเอกสารหลายฉบับโดยใช้ไฟล์ insert() วิธี.

> use testDB
switched to db testDB
> db.createCollection("sample")
{ "ok" : 1 }
> data = 
[
   {
      "_id": "1001", 
      "name": "Ram", 
      "age": "26", 
      "city": "Hyderabad"
   }, 
   {
      "_id": "1002", 
      "name" : "Rahim", 
      "age" : 27, 
      "city" : "Bangalore" 
   }, 
   {
      "_id": "1003", 
      "name" : "Robert", 
      "age" : 28, 
      "city" : "Mumbai" 
   }
]
[
   {
      "_id" : "1001",
      "name" : "Ram",
      "age" : "26",
      "city" : "Hyderabad"
   },
   {
      "_id" : "1002",
      "name" : "Rahim",
      "age" : 27,
      "city" : "Bangalore"
   },
   {
      "_id" : "1003",
      "name" : "Robert",
      "age" : 28,
      "city" : "Mumbai"
   }
]
> db.sample.insert(data)
BulkWriteResult
({
   "writeErrors" : [ ],
   "writeConcernErrors" : [ ],
   "nInserted" : 3,
   "nUpserted" : 0,
   "nMatched" : 0,
   "nModified" : 0,
   "nRemoved" : 0,
   "upserted" : [ ]
})
>

การสร้างคอลเลกชันโดยใช้ python

Pymongo จัดเตรียมเมธอดชื่อ insert_one () เพื่อแทรกเอกสารใน MangoDB วิธีนี้เราต้องส่งเอกสารในรูปแบบพจนานุกรม

ตัวอย่าง

ตัวอย่างต่อไปนี้แทรกเอกสารในคอลเลกชันชื่อตัวอย่าง

from pymongo import MongoClient

#Creating a pymongo client
client = MongoClient('localhost', 27017)

#Getting the database instance
db = client['mydb']

#Creating a collection
coll = db['example']

#Inserting document into a collection
doc1 = {"name": "Ram", "age": "26", "city": "Hyderabad"}
coll.insert_one(doc1)
print(coll.find_one())

เอาต์พุต

{
   '_id': ObjectId('5d63ad6ce043e2a93885858b'), 
   'name': 'Ram', 
   'age': '26', 
   'city': 'Hyderabad'
}

ในการแทรกเอกสารหลายชุดลงใน MongoDB โดยใช้ pymongo คุณต้องเรียกใช้เมธอด insert_many ()

from pymongo import MongoClient

#Creating a pymongo client
client = MongoClient('localhost', 27017)

#Getting the database instance
db = client['mydb']

#Creating a collection
coll = db['example']

#Inserting document into a collection
data = 
[
   {
      "_id": "101", 
      "name": "Ram", 
      "age": "26", 
      "city": "Hyderabad"
   },
   {
      "_id": "102", 
      "name": "Rahim", 
      "age": "27", 
      "city": "Bangalore"
   },
   {
      "_id": "103", 
      "name": "Robert", 
      "age": "28", 
      "city": "Mumbai"
   }
]
res = coll.insert_many(data)
print("Data inserted ......")
print(res.inserted_ids)

เอาต์พุต

Data inserted ......
['101', '102', '103']