PyMySQL – MySQL ड्राइवर: Python से कनेक्शन गाइड

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

परिचय

MySQL सबसे लोकप्रिय रिलेशनल डेटाबेस में से एक है, जिसका व्यापक रूप से वेब डेवलपमेंट और एंटरप्राइज सॉल्यूशंस में उपयोग किया जाता है। Python में MySQL के साथ काम करने के लिए अक्सर PyMySQL ड्राइवर का उपयोग किया जाता है - यह MySQL प्रोटोकॉल का शुद्ध Python इम्प्लीमेंटेशन है। यह उपयोग में सरल, सक्रिय रूप से सपोर्टेड है और SQLAlchemy और Pandas जैसी लोकप्रिय लाइब्रेरीज़ के साथ संगत है।

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

PyMySQL क्या है

PyMySQL Python के लिए एक क्लाइंट लाइब्रेरी है जो MySQL क्लाइंट/सर्वर प्रोटोकॉल को इम्प्लीमेंट करती है। यह MySQL सर्वर से कनेक्ट करने और SQL क्वेरी चलाने के लिए एक इंटरफेस प्रदान करती है। यह लाइब्रेरी Python Database API 2.0 (PEP 249) स्पेसिफिकेशन का पालन करती है, जो अन्य Python एप्लिकेशन के साथ संगतता सुनिश्चित करती है।

PyMySQL की मुख्य विशेषताएं

  • शुद्ध Python: C/C++ पर कोई बाहरी निर्भरता नहीं
  • संगतता: MySQL संस्करण 5.5 और उससे ऊपर को सपोर्ट करता है
  • सुरक्षा: SQL इंजेक्शन से बिल्ट-इन सुरक्षा
  • प्रदर्शन: तेज़ क्वेरी निष्पादन के लिए ऑप्टिमाइज़्ड
  • उपयोग में आसानी: सहज और समझने योग्य API

MySQL से इंस्टॉलेशन और कनेक्शन

इंस्टॉलेशन

pip install pymysql

अतिरिक्त कार्यक्षमता के लिए निम्नलिखित इंस्टॉल करने की भी सिफारिश की जाती है:

pip install pymysql[rsa]  # RSA ऑथेंटिकेशन के लिए

डेटाबेस से कनेक्शन

import pymysql

connection = pymysql.connect(
    host='localhost',
    user='root',
    password='password',
    database='test_db',
    port=3306,
    charset='utf8mb4',
    cursorclass=pymysql.cursors.DictCursor
)

DictCursor आपको टपल के बजाय डिक्शनरी के रूप में परिणाम प्राप्त करने की अनुमति देता है, जिससे डेटा के साथ काम करना अधिक सुविधाजनक हो जाता है।

कनेक्शन पैरामीटर

पैरामीटर विवरण प्रकार डिफ़ॉल्ट
host MySQL सर्वर का होस्ट str 'localhost'
port सर्वर पोर्ट int 3306
user उपयोगकर्ता नाम str None
password पासवर्ड str None
database डेटाबेस का नाम str None
charset एन्कोडिंग str 'utf8mb4'
autocommit ऑटोमैटिक कमिट bool False
cursorclass कर्सर क्लास class Cursor

डेटाबेस और टेबल बनाना

# डेटाबेस बनाना
with connection.cursor() as cursor:
    cursor.execute("CREATE DATABASE IF NOT EXISTS test_db")

# टेबल बनाना
with connection.cursor() as cursor:
    cursor.execute("""
        CREATE TABLE IF NOT EXISTS users (
            id INT AUTO_INCREMENT PRIMARY KEY,
            name VARCHAR(100) NOT NULL,
            email VARCHAR(100) UNIQUE,
            age INT,
            created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
        )
    """)
connection.commit()

PyMySQL के साथ CRUD ऑपरेशन

डेटा इन्सर्ट करना

# एक रिकॉर्ड इन्सर्ट करना
with connection                    

अनुशंसाएँ