Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

पायथन का उपयोग करके MySQL से कैसे कनेक्ट करें

पायथन एक MySQL डेटाबेस से जुड़ने और डेटा को संसाधित करने के कई तरीके प्रदान करता है। यह लेख तीन विधियों का वर्णन करता है।

इससे पहले कि आप निम्न विधियों में से किसी का उपयोग कर सकें, MySQL डेटाबेस और उपयोगकर्ता पहले से मौजूद होने चाहिए। cPanel का उपयोग करके MySQL डेटाबेस को प्रबंधित करने के तरीके के बारे में जानकारी के लिए, कृपया यह लेख देखें।

पायथन का उपयोग करके MySQL से कनेक्ट करना

इससे पहले कि आप पायथन का उपयोग करके MySQL डेटाबेस तक पहुँच सकें, आपको वर्चुअल वातावरण में निम्नलिखित पैकेजों में से एक (या अधिक) स्थापित करना होगा:

  • mysqlclient :इस पैकेज में MySQLdb . शामिल है मापांक। यह सी में लिखा गया है, और यह MySQL के लिए सबसे अधिक उपयोग किए जाने वाले पायथन पैकेजों में से एक है।
  • mysql-कनेक्टर-पायथन :इस पैकेज में mysql.connector . शामिल है मापांक। यह पूरी तरह से पायथन में लिखा गया है।
  • PyMySQL :इस पैकेज में pymysql . शामिल है मापांक। यह पूरी तरह से पायथन में लिखा गया है।

ये तीनों पैकेज पायथन के पोर्टेबल SQL डेटाबेस API का उपयोग करते हैं। इसका मतलब यह है कि यदि आप एक मॉड्यूल से दूसरे मॉड्यूल में स्विच करते हैं, तो आप अपने लगभग सभी मौजूदा कोड का पुन:उपयोग कर सकते हैं (नीचे दिया गया कोड नमूना दर्शाता है कि यह कैसे करना है)।

पायथन वर्चुअल वातावरण सेट करना और एक MySQL पैकेज स्थापित करना

पायथन वर्चुअल वातावरण स्थापित करने और एक MySQL पैकेज स्थापित करने के लिए, इन चरणों का पालन करें:

  1. SSH का उपयोग करके अपने खाते में प्रवेश करें।
  2. वर्चुअल वातावरण बनाने के लिए, निम्न कमांड टाइप करें:
    cd ~
    virtualenv sqlenv
    
    • वर्चुअलएन्व कमांड sqlenv . नामक एक आभासी वातावरण बनाता है , और इस प्रक्रिया में बाद के आदेश मान लेते हैं कि पर्यावरण का नाम sqlenv . है . आप अपने इच्छित किसी भी पर्यावरण नाम का उपयोग कर सकते हैं, लेकिन सुनिश्चित करें कि आप sqlenv . की सभी घटनाओं को बदल दें अपने स्वयं के पर्यावरण नाम के साथ।
    • यदि आप एक वैकल्पिक पायथन संस्करण चला रहे हैं (उदाहरण के लिए, आपने इस लेख में वर्णित अनुसार अपने खाते के लिए मैन्युअल रूप से एक नया पायथन संस्करण कॉन्फ़िगर किया है), तो आप वर्चुअल वातावरण के लिए उस संस्करण को निर्दिष्ट कर सकते हैं। उदाहरण के लिए, वर्चुअल वातावरण में Python 3.8 के उपयोगकर्ता-कॉन्फ़िगर किए गए संस्करण को स्थापित करने के लिए, आप निम्न कमांड का उपयोग कर सकते हैं:
      virtualenv -p /home/username/bin/python3.8 sqlenv
      
  3. वर्चुअल वातावरण को सक्रिय करने के लिए, निम्न आदेश टाइप करें:

    source sqlenv/bin/activate
    कमांड प्रॉम्प्ट अब (sqlenv) . से शुरू होता है यह इंगित करने के लिए कि आप पायथन वर्चुअल वातावरण में काम कर रहे हैं। इस प्रक्रिया में निम्न सभी आदेश मानते हैं कि आप वर्चुअल वातावरण में काम कर रहे हैं। यदि आप अपने SSH सत्र से लॉग आउट करते हैं (या निष्क्रिय करें . का उपयोग करके वर्चुअल परिवेश को निष्क्रिय करते हैं कमांड), सुनिश्चित करें कि आप नीचे दिए गए चरणों का पालन करने और नमूना कोड चलाने से पहले वर्चुअल वातावरण को पुन:सक्रिय करते हैं।
  4. अपडेट करने के लिए पाइप आभासी वातावरण में, निम्न आदेश टाइप करें:

    pip install -U pip
  5. उस पैकेज के लिए कमांड टाइप करें जिसे आप इंस्टॉल करना चाहते हैं:

    • mysqlclient स्थापित करने के लिए पैकेज, निम्न आदेश टाइप करें:
      pip install mysqlclient
    • mysql-connector-python को स्थापित करने के लिए पैकेज, निम्न आदेश टाइप करें:

      pip install mysql-connector-python
    • pymysql को स्थापित करने के लिए पैकेज, निम्न आदेश टाइप करें:

      pip install pymysql
कोड नमूना

वर्चुअल वातावरण में MySQL पैकेज स्थापित करने के बाद, आप वास्तविक डेटाबेस के साथ काम करने के लिए तैयार हैं। निम्नलिखित नमूना पायथन कोड दर्शाता है कि यह कैसे करना है, साथ ही साथ विभिन्न SQL पैकेज कार्यान्वयन के बीच स्विच करना कितना आसान है। नमूना कोड Python 2.7 और Python 3.x के साथ काम करता है।

अपने कोड में, उपयोगकर्ता नाम . को बदलें MySQL डेटाबेस उपयोगकर्ता नाम के साथ, पासवर्ड डेटाबेस उपयोगकर्ता के पासवर्ड के साथ, और dbname डेटाबेस नाम के साथ:

#!/usr/bin/python

from __future__ import print_function

hostname = 'localhost'
username = 'username'
password = 'password'
database = 'dbname'

# Simple routine to run a query on a database and print the results:
def doQuery( conn ) :
    cur = conn.cursor()

    cur.execute( "SELECT fname, lname FROM employee" )

    for firstname, lastname in cur.fetchall() :
        print( firstname, lastname )


print( "Using mysqlclient (MySQLdb):" )
import MySQLdb
myConnection = MySQLdb.connect( host=hostname, user=username, passwd=password, db=database )
doQuery( myConnection )
myConnection.close()

print( "Using mysql.connector:" )
import mysql.connector
myConnection = mysql.connector.connect( host=hostname, user=username, passwd=password, db=database )
doQuery( myConnection )
myConnection.close()

print( "Using pymysql:" )
import pymysql
myConnection = pymysql.connect( host=hostname, user=username, passwd=password, db=database )
doQuery( myConnection )
myConnection.close()

यह उदाहरण कनेक्शन . की एक शृंखला बनाता है ऑब्जेक्ट्स जो अलग-अलग MySQL मॉड्यूल का उपयोग करके एक ही डेटाबेस को खोलता है। चूंकि सभी तीन MySQL मॉड्यूल पोर्टेबल SQL डेटाबेस API इंटरफ़ेस का उपयोग करते हैं, इसलिए वे doQuery() में कोड का उपयोग करने में सक्षम हैं। बिना किसी संशोधन के कार्य करें।

जब आपके पास कनेक्शन . हो किसी डेटाबेस से संबद्ध ऑब्जेक्ट, आप एक कर्सर बना सकते हैं वस्तु। कर्सर ऑब्जेक्ट आपको execute() . चलाने में सक्षम बनाता है विधि, जो बदले में आपको अपरिष्कृत SQL कथन चलाने में सक्षम बनाती है (इस मामले में, एक चयन कर्मचारी . नामक तालिका पर क्वेरी )।

जैसा कि आप देख सकते हैं, पायथन का पोर्टेबल SQL डेटाबेस API आपके कोड में MySQL मॉड्यूल के बीच स्विच करना बहुत आसान बनाता है। ऊपर के नमूने में, एक अलग मॉड्यूल का उपयोग करने के लिए आवश्यक कोड परिवर्तन केवल आयात . हैं और कनेक्ट करें बयान।

अधिक जानकारी

  • पायथन के पोर्टेबल SQL डेटाबेस API के बारे में अधिक जानकारी के लिए, कृपया https://www.python.org/dev/peps/pep-0249 पर जाएं।
  • mysqlclient के बारे में अधिक जानकारी के लिए पैकेज, कृपया देखें https://pypi.org/project/mysqlclient.
  • mysql-connector-python के बारे में अधिक जानकारी के लिए पैकेज, कृपया देखें https://pypi.python.org/pypi/mysql-connector-python।
  • PyMySQL के बारे में अधिक जानकारी के लिए पैकेज, कृपया https://pypi.python.org/pypi/PyMySQL पर जाएं।

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. भ्रष्ट MySQL डेटाबेस की मरम्मत के लिए नि:शुल्क तरीके

  2. घंटा () उदाहरण – MySQL

  3. MySQL में ग्रुप बाय क्लॉज का उपयोग करके समूह पंक्तियाँ

  4. MySQL में रेगुलर एक्सप्रेशन को कैसे बदलें?

  5. MySQL प्रतिकृति के लिए विफलता का परिचय - 101 ब्लॉग