คำแนะนำหลักสูตร
- หน้าก่อน MongoDB สร้างคลัสเซอร์
- หน้าต่อไป MongoDB ค้นหา
Python MongoDB ใส่เอกสาร
เอกสารใน MongoDB คล้ายกับบันทึกในฐานข้อมูล SQL
ใส่ชุด กลับฟิลด์ _id
วิธี。
กลับฟิลด์ _id
เพื่อใส่บันทึกหรือที่เรียกว่าเอกสารของเราเข้ามาในชุด MongoDB ของเราใช้
รูปแบบตัวอย่าง
ประกายแรกของวิธีคือภาษาไทยที่มีของแต่ละฟิลด์ชื่อและค่าที่ต้องการใส่เข้ามาในเอกสาร
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] ใส่บันทึกเข้ามาในชุด "customers": mydict = { "name": "Peter", "address": "Lowstreet 27" }
mydict = { "name": "Bill", "address": "Highway 37" }
กลับฟิลด์ _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 สำหรับบันทึก (เอกสาร)
ใส่หลายเอกสาร
เพื่อใส่หลายเอกสารเข้ามาในชุด MongoDB ของเราใช้ 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()
ของวิธีการที่กลับมาเป็นอนุกำหนดที่มีตัวแปร inserted_ids
ใช้เพื่อบันทึก ID ของเอกสารที่ถูกฝัง
การฝังเอกสารด้วย ID ที่กำหนด
หากคุณไม่ต้องการให้ MongoDB จัดสรร _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)
- หน้าก่อน MongoDB สร้างคลัสเซอร์
- หน้าต่อไป MongoDB ค้นหา