Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> ฐานข้อมูล

PyMongo และโมดูล Python อื่น ๆ สำหรับกลไกฐานข้อมูล

โดยทั่วไป นักพัฒนาจะใช้เชลล์สคริปต์เพื่อทำงานฐานข้อมูลโดยอัตโนมัติ เช่น การส่งออกและนำเข้าข้อมูล การรวบรวมสถิติฐานข้อมูล (DB) การตรวจสอบพื้นที่ตาราง เซสชันการบล็อก การล็อก DB และอื่นๆ

ภาพรวม

Python® ได้กลายเป็นหนึ่งในภาษาการเขียนโปรแกรมที่ได้รับความนิยมมากที่สุดในช่วงเจ็ดปีที่ผ่านมา โพสต์นี้ครอบคลุมถึงโมดูล DB ต่างๆ ที่ใช้ใน Python สำหรับกลไกฐานข้อมูลต่างๆ และแสดงวิธีใช้โมดูล PyMongo เพื่อสืบค้นและแทรกข้อมูลลงใน MongoDB®collection

แนะนำโมดูล Python

Python เป็นภาษาโปรแกรมเชิงวัตถุและระดับสูง มีโมดูลที่หลากหลายสำหรับการใช้งานที่แตกต่างกัน เช่น การพัฒนาเว็บ วิทยาศาสตร์ข้อมูล การดูแลระบบ Linux® และอื่นๆ ตารางต่อไปนี้แสดงรายละเอียดเกี่ยวกับกลไกจัดการฐานข้อมูลและโมดูล Python ที่เกี่ยวข้อง:

กลไกจัดการฐานข้อมูล โมดูล Python
Oracle cx_oracle
PostgreSQL psycopg2
MongoDB pymongo
MySQL mysql.connector และ pymysql
แคสแซนดรา ไดรเวอร์ Cassandra

CX_ORACLE

cx_oracle เป็นโมดูล Python ที่ให้คุณเข้าถึงฐานข้อมูล Oracle และปฏิบัติตามข้อกำหนด API ฐานข้อมูล Python โมดูลนี้เข้ากันได้กับ Oracle Database 11.2,12c, 18c,19c และ 21c

PSYCOPG2

psycopg2 เป็นโมดูล Python ที่ให้คุณเข้าถึงฐานข้อมูล PostgreSQL และปฏิบัติตามข้อกำหนด API ฐานข้อมูล Python คุณลักษณะสำคัญประการหนึ่งคือ เปิดใช้งานแอปพลิเคชันแบบมัลติเธรดที่เปิดเคอร์เซอร์หลายตัวเพื่อทำการแทรกและอัปเดตพร้อมกันได้

ปิงโก้

pymongo เป็นโมดูลที่ให้คุณเข้าถึงฐานข้อมูล mongo และดำเนินการสืบค้นฐานข้อมูลบนอ็อบเจ็กต์ฐานข้อมูล MongoDB เช่น คอลเล็กชัน เอกสาร และอื่นๆ

MYSQL.CONNECTOR

mysql.connector เป็นโมดูลที่ให้คุณเข้าถึงฐานข้อมูล MySQL และปฏิบัติตามข้อกำหนด API ฐานข้อมูล Python เปิดใช้งานการสืบค้นฐานข้อมูล

CASSANDRA-DRIVER

cassandra-driver เป็นไดรเวอร์ Python สำหรับฐานข้อมูล Apache® Cassandra® และเข้ากันได้กับภาษาการสืบค้น Cassandra (CQL) เมื่อใช้โมดูลนี้ คุณจะเชื่อมต่อและค้นหาฐานข้อมูลของ Cassandra ได้

สาธิต PyMongo

การเขียนโปรแกรม Python ดำเนินการ CRUD (สร้าง อ่าน อัปเดต และลบ) ที่แตกต่างกันใน MongoDB ขั้นตอนต่อไปนี้แสดงวิธีการดาวน์โหลด pip , ติดตั้ง pymongo โมดูล และเขียนและรันสคริปต์ Python ด้วย PyMongo:

  1. เรียกใช้คำสั่งต่อไปนี้เพื่อตรวจสอบเวอร์ชันของ Python บนเซิร์ฟเวอร์ Linux ของคุณ:

     # python --version
     Python 2.7.18
    
  2. ใช้คำสั่งต่อไปนี้เพื่อติดตั้ง pip และ PyMongo:

     # yum install python-pip
     # pip install pymongo
    
  3. เปิดตัวแก้ไขข้อความที่คุณเลือกและเขียนสคริปต์ Python ต่อไปนี้ (mongo-crud.py ) เพื่อดำเนินการ CRUD ในคอลเล็กชันใน MongoDB:

     #!/usr/bin/python
    
     from pymongo import MongoClient
     client = MongoClient(host = 'localhost:27017', username="dba", password="user123")
    
     mongodbinfo = client.server_info()
     print ("Printing MongoDB Server Information")
     print (mongodbinfo)
    
     print ("##################################################")
    
     print ("Mongo DB version")
     print ("db version:", mongodbinfo["version"])
    
     print ("##################################################")
    
     db = client.empdb
     empdetails = db.employeedetails
     print ("Existing collection information")
     printcollection = empdetails.find()
     for i in printcollection:
         print (i)
     print ("##################################################")
    
     print ("Adding one document to the collection")
     details = {"name": "Andy", "designation": "Clerk"}
     newentry = empdetails.insert_one(details)
     print (" newentry:", newentry)
    
     printcollection1 = empdetails.find()
     for i in printcollection1:
         print (i)
     print ("##################################################")
    
     print ("Performing a search on the collection")
    
     search = empdetails.find_one({ 'name' : 'Jack'})
     print (search)
     print ("##################################################")
    
     print ("Adding multiple documents to the collection")
     entry1 = {"name": "Cathy", "designation": "Data Operator"}
     entry2 = {"name": "Susan", "designation": "Operations Manager"}
     newentries = empdetails.insert_many([entry1, entry2])
    
     printcollection2 = empdetails.find()
     for i in printcollection2:
         print (i)
    
  4. รันสคริปต์ Python โดยรันคำสั่งต่อไปนี้ ผลลัพธ์จะคล้ายกับภาพต่อไปนี้:

     # python mongo-crud.py
    
PyMongo และโมดูล Python อื่น ๆ สำหรับกลไกฐานข้อมูล

บทสรุป

Python เป็นหนึ่งในภาษาการเขียนโปรแกรมที่ได้รับความนิยมมากที่สุดในปี 2020 โดยมีการใช้งานที่หลากหลาย Python ให้ทางเลือกแก่วิศวกรฐานข้อมูลแทนการใช้สคริปต์เชลล์สำหรับการทำงานอัตโนมัติของฐานข้อมูล

เรียนรู้เพิ่มเติมเกี่ยวกับบริการฐานข้อมูลของเรา

ใช้แท็บคำติชมเพื่อแสดงความคิดเห็นหรือถามคำถาม คุณสามารถเริ่มการสนทนากับเราได้