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'