ผมได้ลองสร้างไดรเวอร์ 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 ดีขึ้นอีกหน่อย ก็น่าจะมีความหมายไม่น้อย

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น