SQLAlchemy - บทนำ

SQLAlchemy เป็นชุดเครื่องมือ SQL ยอดนิยมและ Object Relational Mapper. มันเขียนในPythonและมอบพลังและความยืดหยุ่นอย่างเต็มที่ของ SQL แก่นักพัฒนาแอปพลิเคชัน มันคือopen source และ cross-platform software เผยแพร่ภายใต้ใบอนุญาต MIT

SQLAlchemy มีชื่อเสียงในด้าน object-relational mapper (ORM) โดยใช้คลาสที่สามารถแมปกับฐานข้อมูลได้จึงทำให้โมเดลอ็อบเจ็กต์และสคีมาฐานข้อมูลสามารถพัฒนาได้อย่างแยกส่วนตั้งแต่ต้น

เนื่องจากขนาดและประสิทธิภาพของฐานข้อมูล SQL เริ่มมีความสำคัญจึงมีพฤติกรรมไม่เหมือนกับการรวบรวมวัตถุ ในทางกลับกันเนื่องจากสิ่งที่เป็นนามธรรมในคอลเลกชันวัตถุเริ่มมีความสำคัญพวกมันจะทำงานเหมือนตารางและแถวน้อยลง SQLAlchemy มีเป้าหมายเพื่อรองรับหลักการทั้งสองนี้

ด้วยเหตุนี้จึงได้นำไฟล์ data mapper pattern (like Hibernate) rather than the active record pattern used by a number of other ORMs. ฐานข้อมูลและ SQL จะถูกมองในมุมมองที่แตกต่างกันโดยใช้ SQLAlchemy

Michael Bayer เป็นผู้เขียนต้นฉบับของ SQLAlchemy เวอร์ชันเริ่มต้นเปิดตัวในเดือนกุมภาพันธ์ 2549 เวอร์ชันล่าสุดมีหมายเลข 1.2.7 ซึ่งเปิดตัวเมื่อเร็ว ๆ นี้ในเดือนเมษายน 2018

ORM คืออะไร?

ORM (Object Relational Mapping) เป็นเทคนิคการเขียนโปรแกรมสำหรับการแปลงข้อมูลระหว่างระบบชนิดที่เข้ากันไม่ได้ในภาษาโปรแกรมเชิงวัตถุ โดยปกติระบบ type ที่ใช้ในภาษา Object Oriented (OO) เช่น Python จะมีประเภทที่ไม่ใช่สเกลาร์ สิ่งเหล่านี้ไม่สามารถแสดงเป็นประเภทดั้งเดิมเช่นจำนวนเต็มและสตริง ดังนั้นโปรแกรมเมอร์ OO จึงต้องแปลงวัตถุในข้อมูลสเกลาร์เพื่อโต้ตอบกับฐานข้อมูลแบ็กเอนด์ อย่างไรก็ตามชนิดข้อมูลในผลิตภัณฑ์ฐานข้อมูลส่วนใหญ่เช่น Oracle, MySQL เป็นต้นเป็นประเภทข้อมูลหลัก

ในระบบ ORM แต่ละคลาสจะแมปกับตารางในฐานข้อมูลพื้นฐาน แทนที่จะเขียนโค้ดเชื่อมต่อฐานข้อมูลที่น่าเบื่อด้วยตัวคุณเอง ORM จะดูแลปัญหาเหล่านี้ให้คุณในขณะที่คุณสามารถมุ่งเน้นไปที่การเขียนโปรแกรมลอจิกของระบบ

SQLAlchemy - การตั้งค่าสภาพแวดล้อม

ให้เราหารือเกี่ยวกับการตั้งค่าสภาพแวดล้อมที่จำเป็นในการใช้ SQLAlchemy

Python ทุกเวอร์ชันที่สูงกว่า 2.7 จำเป็นต้องติดตั้ง SQLAlchemy วิธีที่ง่ายที่สุดในการติดตั้งคือใช้ Python Package Managerpip. ยูทิลิตี้นี้มาพร้อมกับการแจกแจงมาตรฐานของ Python

pip install sqlalchemy

โดยใช้คำสั่งด้านบนเราสามารถดาวน์โหลดไฟล์ latest released versionของ SQLAlchemy จากpython.orgและติดตั้งลงในระบบของคุณ

ในกรณีที่มีการแจกจ่าย Python ของอนาคอนดาสามารถติดตั้ง SQLAlchemy ได้จากไฟล์ conda terminal โดยใช้คำสั่งด้านล่าง -

conda install -c anaconda sqlalchemy

นอกจากนี้ยังสามารถติดตั้ง SQLAlchemy จากซอร์สโค้ดด้านล่าง -

python setup.py install

SQLAlchemy ได้รับการออกแบบมาเพื่อทำงานร่วมกับการใช้งาน DBAPI ที่สร้างขึ้นสำหรับฐานข้อมูลเฉพาะ ใช้ระบบภาษาถิ่นเพื่อสื่อสารกับการใช้งาน DBAPI และฐานข้อมูลประเภทต่างๆ ภาษาถิ่นทั้งหมดต้องการให้ติดตั้งไดรเวอร์ DBAPI ที่เหมาะสม

ต่อไปนี้เป็นภาษาถิ่นรวม -

  • Firebird
  • Microsoft SQL Server
  • MySQL
  • Oracle
  • PostgreSQL
  • SQLite
  • Sybase

หากต้องการตรวจสอบว่า SQLAlchemy ได้รับการติดตั้งอย่างถูกต้องและต้องการทราบเวอร์ชันหรือไม่ให้ป้อนคำสั่งต่อไปนี้ในพรอมต์ Python -

>>> import sqlalchemy
>>>sqlalchemy.__version__
'1.2.7'