SQLAlchemy Core - डेटाबेस से जुड़ रहा है

पिछले अध्याय में, हमने SQLAlchemy में अभिव्यक्ति भाषा के बारे में चर्चा की है। अब एक डेटाबेस से जुड़ने में शामिल कदमों की ओर बढ़ते हैं।

इंजन वर्ग जोड़ता है a Pool and Dialect together डेटाबेस का एक स्रोत प्रदान करने के लिए connectivity and behavior। इंजन वर्ग की एक वस्तु का उपयोग कर तत्काल किया जाता हैcreate_engine() समारोह।

Create_engine () फ़ंक्शन डेटाबेस को एक तर्क के रूप में लेता है। डेटाबेस को कहीं भी परिभाषित करने की आवश्यकता नहीं है। मानक कॉलिंग फॉर्म को URL को पहले स्थितीय तर्क के रूप में भेजना होता है, आमतौर पर एक स्ट्रिंग जो डेटाबेस बोली और कनेक्शन तर्कों को इंगित करता है। नीचे दिए गए कोड का उपयोग करके, हम एक डेटाबेस बना सकते हैं।

>>> from sqlalchemy import create_engine
>>> engine = create_engine('sqlite:///college.db', echo = True)

के लिए MySQL database, नीचे कमांड का उपयोग करें -

engine = create_engine("mysql://user:pwd@localhost/college",echo = True)

विशेष रूप से उल्लेख करने के लिए DB-API कनेक्शन के लिए इस्तेमाल किया जाना है URL string फॉर्म निम्नानुसार है -

dialect[+driver]://user:password@host/dbname

उदाहरण के लिए, यदि आप उपयोग कर रहे हैं PyMySQL driver with MySQL, निम्नलिखित कमांड का उपयोग करें -

mysql+pymysql://<username>:<password>@<host>/<dbname>

echo flagSQLAlchemy लॉगिंग सेट करने के लिए एक शॉर्टकट है, जो पायथन के मानक लॉगिंग मॉड्यूल के माध्यम से पूरा होता है। बाद के अध्यायों में, हम सभी उत्पन्न एसक्यूएल सीखेंगे। वर्बोज़ आउटपुट को छिपाने के लिए, इको विशेषता सेट करेंNone। Create_engine () फ़ंक्शन के अन्य तर्क बोली विशिष्ट हो सकते हैं।

Create_engine () फ़ंक्शन एक रिटर्न देता है Engine object। इंजन क्लास के कुछ महत्वपूर्ण तरीके हैं -

अनु क्रमांक। विधि और विवरण
1

connect()

कनेक्शन ऑब्जेक्ट लौटाता है

2

execute()

SQL कथन निर्माण निष्पादित करता है

3

begin()

एक संदर्भ प्रबंधक की स्थापना के साथ एक कनेक्शन देने वाला रिटर्न देता है। सफल संचालन पर, लेन-देन प्रतिबद्ध है, अन्यथा इसे वापस ले लिया जाता है

4

dispose()

इंजन द्वारा उपयोग किए जाने वाले कनेक्शन पूल का निपटान

5

driver()

इंजन द्वारा उपयोग में बोली का ड्राइवर नाम

6

table_names()

डेटाबेस में उपलब्ध सभी तालिका नामों की सूची लौटाता है

7

transaction()

लेन-देन सीमा के भीतर दिए गए फ़ंक्शन को निष्पादित करता है