pycubrid - ไดรเวอร์ DB-API แบบ Pure Python สำหรับ CUBRID
(github.com/cubrid-lab)ผมได้ลองสร้างไดรเวอร์ Python สำหรับ CUBRID ขึ้นมาในรูปแบบ Pure Python
ไดรเวอร์ CUBRID สำหรับ Python แบบเดิมอิงกับ C extension จึงอาจทำให้การติดตั้งและการแจกจ่ายค่อนข้างยุ่งยากเล็กน้อย ขึ้นอยู่กับเวอร์ชันของ Python, ระบบปฏิบัติการ หรือสภาพแวดล้อม CI/CD
pycubrid เป็นไดรเวอร์ที่สร้างขึ้นมาเพื่อลดภาระในส่วนนี้ โดยเป้าหมายเรียบง่ายมาก
pip install pycubrid
ติดตั้งแบบนี้ แล้วเชื่อมต่อกับ CUBRID และใช้งานในรูปแบบ Python DB-API 2.0
ตัวอย่างการใช้งานแบบง่ายมีลักษณะดังนี้
import pycubrid
conn = pycubrid.connect(
host="localhost",
port=33000,
database="demodb",
user="dba",
password="",
)
with conn.cursor() as cur:
cur.execute("SELECT 1")
print(cur.fetchone())
conn.close()
ตอนนี้ได้รองรับการใช้งาน DB-API พื้นฐานไว้พอสมควรแล้ว เช่น การเชื่อมต่อ การรันคิวรี cursor และ transaction นอกจากนี้ยังรองรับ type hints, asyncio API และการเชื่อมต่อกับ SQLAlchemy ด้วย
อย่างไรก็ตาม สภาพแวดล้อมการใช้งานจริงอาจมีความหลากหลาย จึงอยากรับฟีดแบ็กจากคนที่เคยใช้ CUBRID กับ Python ว่ามีจุดไหนที่ไม่สะดวกในไดรเวอร์เดิม หรือมีฟีเจอร์ใดที่จำเป็นในมุมของ DB-API/SQLAlchemy ก็ขอความเห็นได้เลย
แม้ CUBRID จะไม่ใช่ฐานข้อมูลที่ได้รับความนิยมในวงกว้าง แต่ก็ยังพบได้ในระบบภาครัฐและระบบองค์กรในเกาหลี ดังนั้นหากทำให้การใช้งานฝั่ง Python ดีขึ้นอีกหน่อย ก็น่าจะมีความหมายไม่น้อย
ยังไม่มีความคิดเห็น