เรียนเขียนโปรแกรมง่ายๆกับ Expert Programming Tutor ในบท Python MongoDB Insert Document
เราจะได้เรียนรู้อะไรบ้างในบทนี้
- Document ใน MongoDB เหมือนกับบันทึกในฐานข้อมูล SQL
การแทรกลงในคอลเล็กชัน
ในการแทรกเร็กคอร์ดหรือเอกสารตามที่ถูกเรียกใน MongoDB ลงในคอลเลกชันเราใช้เมธอด insert_one () พารามิเตอร์แรกของเมธอด insert_one () คือดิกชินนารีที่มีชื่อและค่าของแต่ละฟิลด์ในเอกสารที่นักเรียนต้องการแทรก
ตัวอย่าง
แทรกบันทึกในคอลเลกชัน "customers"
import pymongo |
ผลลัพธ์
C:\Users\My Name>python demo_mongodb_insert.py |
ส่งคืนฟิลด์ _id
เมธอด insert_one () จะส่งคืนออบเจกต์ InsertOneResult ซึ่งมีคุณสมบัติ insert_id ที่เก็บ id ของเอกสารที่แทรก
ตัวอย่าง
แทรกบันทึกอื่นในคอลเลกชัน "customers" และส่งคืนค่าของฟิลด์ _id
import pymongo |
ผลลัพธ์
C:\Users\My Name>python demo_mongodb_insert_id.py |
หากนักเรียนไม่ได้ระบุฟิลด์ _id ดังนั้น MongoDB จะเพิ่มหนึ่งรายการ(List)ให้กับนักเรียนและกำหนดโค้ดเฉพาะสำหรับแต่ละเอกสาร ในตัวอย่างข้างต้นไม่ได้ระบุฟิลด์ _id ดังนั้น MongoDB จึงกำหนด _id ที่ไม่ซ้ำกันสำหรับบันทึก (document)
แทรกเอกสารหลายฉบับ
ในการแทรกเอกสารหลาย ๆ ชุดลงในคอลเลกชันใน MongoDB เราใช้เมธอด insert_many() พารามิเตอร์แรกของเมธอด insert_many() คือรายการ(List)ที่มีพจนานุกรมที่มีข้อมูลที่นักเรียนต้องการแทรก
ตัวอย่าง
import pymongo |
ผลลัพธ์
C:\Users\My Name>python demo_mongodb_insert_many.py |
เมธอด insert_many () ส่งคืนออบเจกต์ InsertManyResult ซึ่งมีคุณสมบัติ insert_ids ที่เก็บรหัสของเอกสารที่แทรก
การแทรกเอกสารหลายฉบับพร้อมโค้ดที่ระบุ
หากนักเรียนไม่ต้องการให้ MongoDB กำหนดโค้ดที่ไม่ซ้ำกันให้กับเอกสารของนักเรียน นักเรียนสามารถระบุฟิลด์ _id เมื่อนักเรียนแทรกเอกสาร จำไว้ว่าค่าต้องไม่ซ้ำกัน เอกสารสองรายการต้องไม่มี _id เดียวกัน
ตัวอย่าง
import pymongo |
ผลลัพธ์
C:\Users\My Name>python demo_mongodb_insert_many2.py |
แปลจาก https://www.w3schools.com/python/python_mongodb_insert.asp
Tag ที่น่าสนใจ: python mongodb document_insertion insert_one inserted_id insert_many insertoneresult insertmanyresult insert_ids database_programming database_management
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM