Executing SQL queries using Python In Hindi

Executing SQL queries using Python In Hindi

पाइथन प्रोग्रामिंग लैंग्वेज में SQL (स्ट्रक्चर्ड क्वेरी लैंग्वेज) डेटाबेस सॉफ्टवेयर का यूज़ रिलेशनल डेटाबेस मैनेजमेंट सिस्टम के साथ डायरेक्ट कम्युनिकेट कर डाटा और इनफार्मेशन को एक्सचेंज करने में किया जाता है। पाइथन प्रोग्रामिंग लैंग्वेज, SQLite के लिए sqlite3 लाइब्रेरी मॉड्यूल या MySQL डेटाबेस सॉफ्टवेयर के लिए कनेक्टर जैसे डेटाबेस मॉड्यूल के माध्यम से SQL क्वेरी स्टेटमेंट को एग्जीक्यूट कर सकता है।

Executing SQL queries using Python In Hindi

Using Python with SQL software, users can implement CRUD database operations.

  • C — नया SQL डेटाबेस डेटा क्रिएट करने में इसे यूज़ करे
  • R — मौजूदा SQL डेटाबेस से डेटा और इनफार्मेशन को रीड करे
  • U — मौजूदा SQL डेटाबेस से डेटा और इनफार्मेशन को अपडेट करें
  • D — मौजूदा SQL डेटाबेस से डेटा और इनफार्मेशन को डिलीट करें

Process databases using basic SQL software.

पाइथन प्रोग्रामिंग लैंग्वेज का यूज़ करके, पाइथन यूजर SQL क्वेरी कमांड स्टेटमेंट को एग्जीक्यूट कर सकते है.

SQL डेटाबेस से कनेक्ट करें

एक कर्सर बनाएँ

डिजायर SQL क्वेरी को लिखें

SQL क्वेरी स्टेटमेंट को एग्जीक्यूट करें

जरूरी क्वेरी बदलाव को कमिट करें

इच्छित नतीजे पाएँ

SQL डेटाबेस कनेक्शन को बंद करें

Using SQLite Database Software with Python Programming.

पाइथन प्रोग्रामिंग लैंग्वेज में sqlite3 डेटाबेस सॉफ्टवेयर मॉड्यूल इन-बिल्ट या इन्क्लुड होता है, इस वजह से SQLite, SQL डेटाबेस बेसिक से सीखने के लिए एक आसान डेटाबेस सॉफ्टवेयर चॉइस है।

Connecting to a SQLite Database in Python.

import sqlite3

connection = sqlite3.connect(“employee.db”)

cursor = connection.cursor()

Here in this explanation.

  • sqlite3 पाइथन में SQLite डेटाबेस सॉफ्टवेयर के सपोर्ट को प्रोवाइड करता है।
  • connect() यह फंक्शन SQLite में एक नया डेटाबेस क्रिएट या ओपन करता है।
  • cursor() यह फंक्शन पाइथन में SQL क्वेरी स्टेटमेंट को एग्जीक्यूट करने के लिए यूज़ होने वाला ऑब्जेक्ट को क्रिएट करता है।

Creating a table in SQL database software.

यहाँ पाइथन यूजर SQL CREATE TABLE कमांड या स्टेटमेंट का यूज़ करते हैं, और इससे एक नया डेटाबेस टेबल स्ट्रक्चर को क्रिएट किया जाता है.

cursor.execute(“””

CREATE TABLE IF NOT EXISTS Employee (

Emp_id INTEGER PRIMARY KEY,

Emp_name TEXT,

Department TEXT,

Salary INTEGER

)

“””)

connection.commit()

यह SQLite डेटाबेस सॉफ्टवेयर में Employee नाम की एक डेटाबेस को टेबल क्रिएट करता है।

The Employee table mainly contains the following.

#ColumnDescription
1.Emp_idEmployee id
2.Emp_nameEmployee name
3.DepartmentEmployee department name
4.SalaryEmployee salary

Python SQL Database Table INSERT Query.

पाइथन यूजर SQL डेटाबेस में INSERT क्वेरी कमांड या स्टेटमेंट का यूज़ मौजूदा या पूर्वे में क्रिएट एम्प्लॉई डेटाबेस टेबल में एक नया टेबल डेटा ऐड या इन्सर्ट करने में किया जाता है।

cursor.execute(

“INSERT INTO Employee (Emp_id, Emp_name, Department, Salary) VALUES (?, ?, ?, ?)”,

(104 “Lalita”, “Purchase”, 99000)

)

connection.commit()

यहाँ SQL डेटाबेस स्टेटमेंट में ? क्वेश्चन मार्क सिंबल पैरामीटर एक टेबल डाटा इनफार्मेशन इन्सर्ट प्लेसहोल्डर हैं।

SQL डेटाबेस स्ट्रिंग में यूज़र इनपुट को ऐड कर SQL डेटाबेस क्वेरी को क्रिएट करने की तुलना में पैरामीटर का यूज़ करना ज़्यादा सिक्योर मेथड है।

SELECT query in an SQL database.

SQL डेटाबेस में SELECT कमांड स्टेटमेंट का यूज़ मौजूदा Employee डेटाबेस टेबल से डेटा और इनफार्मेशन को एक्सट्रेक्ट करने में किया जाता है।

cursor.execute(“SELECT * FROM Employee”)

rows = cursor.fetchall()

for row in rows:

print(row)

Possible output of the SELECT command statement in an SQL database.

(104 “Lalita”, “Purchase”, 99000)

fetchone()

यह पाइथन डेटाबेस फंक्शन मौजूदा SQL डेटाबेस से एक row इनफार्मेशन को एक्सट्रेक्ट करता है.

row = cursor.fetchone()

print(row)

fetchall()

यह पाइथन डेटाबेस फंक्शन मौजूदा SQL डेटाबेस से बाकी सभी बची हुई डेटाबेस टेबल rows इनफार्मेशन को एक्सट्रेक्ट करता है.

rows = cursor.fetchall()

SELECT statement with a user-defined custom condition.

SQL डेटाबेस सॉफ्टवेयर में WHERE क्लॉज़ स्टेटमेंट का यूज़ एक स्पेशल लॉजिक बेस्ड टेबल डाटा रिकॉर्ड इनफार्मेशन को एक्सट्रेक्ट करने में किया जा सकता है।

cursor.execute(

“SELECT * FROM Employee WHERE Salary > ?”,

(99000,)

)

for row in cursor.fetchall():

print(row)

यह कमांड स्टेटमेंट SQL डेटाबेस में उन एम्प्लॉई रिकॉर्ड इनफार्मेशन को एक्सट्रेक्ट कर डिस्प्ले करता है, जिन एम्प्लॉई की मासिक सैलरी 99000 रूपए से अधिक हैं।

UPDATE SQL database query.

SQL डेटाबेस सॉफ्टवेयर में UPDATE कमांड स्टेटमेंट मौजूदा एम्प्लॉई डेटाबेस टेबल के रिकॉर्ड को मॉडिफाई या अपडेट करने में हेल्प करता है।

For example, updating or changing Bhavishi’s salary.

cursor.execute(

“UPDATE Employee SET Salary = ? WHERE Emp_name = ?”,

(110000, “Bhavishi”)

)

connection.commit()

यहाँ एम्प्लॉई डेटाबेस टेबल में अब भविषि की अपडेटेड सैलरी 110000 रूपए हैं।

DELETE SQL database query.

SQL डेटाबेस सॉफ्टवेयर में DELETE कमांड स्टेटमेंट का यूज़ मौजूदा एम्प्लॉई डेटाबेस टेबल से रिकॉर्ड्स या इनफार्मेशन को डिलीट करने में किया है।

cursor.execute(

“DELETE FROM Employee WHERE Emp_name = ?”,

(“Lalita”,)

)

connection.commit()

यह कमांड SQL डेटाबेस में उस एम्प्लॉई रिकॉर्ड को डिलीट करता है, जिस एम्प्लॉई का नाम ललिता है।

Important – यह मौजूदा एम्प्लॉई डेटाबेस टेबल में किसी स्पेशल डेटाबेस रिकॉर्ड्स इनफार्मेशन को डिलीट करते समय हमेशा करेक्ट WHERE क्लॉज़ कंडीशन का यूज़ करें। याद रहे, यदि आप वेयर क्लॉज़ को प्रॉपर यूज़ नहीं करते है, तो यह आपकी अन्य टेबल रौ को डिलीट कर सकता है।

Complete example of a SQLite database command statement.

यहाँ आपके सामने एक कम्पलीट पाइथन प्रोग्राम एक्साम्प्ल है, जो कई SQL कमांड क्वेरी स्टेटमेंट को रिप्रेजेंट करता है.

import sqlite3

# Connect to database

connection = sqlite3.connect(“employee.db”)

cursor = connection.cursor()

# Create a complete SQL database table.

cursor.execute(“””

CREATE TABLE IF NOT EXISTS Employee (

Emp_id INTEGER PRIMARY KEY,

Emp_name TEXT,

Department TEXT,

Salary INTEGER

)

“””)

# Insert new table record data into the SQL database table.

cursor.execute(

“INSERT INTO Employee (Emp_id, Emp_name, Department, Salary) VALUES (?, ?, ?, ?)”,

(105 “Disha”, “Education”, 89000)

)

cursor.execute(

“INSERT INTO Employee (Emp_id, Emp_name, Department, Salary) VALUES (?, ?, ?, ?)”,

(106 “Harry”, “Travelling”, 88000)

)

connection.commit()

# Read data from SQL database table.

cursor.execute(“SELECT * FROM Employee”)

for Employee in cursor.fetchall():

print(Employee)

# Update data in SQL database table.

cursor.execute(

“UPDATE Employee SET Salary = ? WHERE Emp_name = ?”,

(112000, “Harry”)

)

connection.commit()

# Delete data from the SQL database table.

cursor.execute(

“DELETE FROM Employee WHERE Emp_name = ?”,

(“Disha”,)

)

connection.commit()

# Close the connection to the SQL database table.

connection.close()

Running table queries in MySQL database software.

पाइथन प्रोग्रामिंग लैंग्वेज में MySQL डेटाबेस सॉफ्टवेयर कनेक्शन कनेक्टिविटी के लिए, पाइथन यूजर MySQL Connector/Python स्टेटमेंट का यूज़ कर सकते हैं।

Install MySQL database software like this.

pip install mysql-connector-python

connect to the MySQL database software in Python.

import mysql.connector

connection = mysql.connector.connect(

host=”localhost”,

user=”root”,

password=”your_password”,

database=”employee”

)

cursor = connection.cursor()

पाइथन प्रोग्रामिंग लैंग्वेज में SQL कमांड स्टेटमेंट एक जैसे होते हैं, लेकिन MySQL Connector/Python द्वारा यूज़ किया जाने वाला डेटाबेस टेबल पैरामीटर प्लेसहोल्डर  के रूप में %s सिंबल डिफाइन है।

Example of MySQL Connector.

cursor.execute(

“SELECT * FROM Employee WHERE Salary > %s”,

(100000,)

)

for row in cursor.fetchall():

print(row)

Some common popular Apply SQL database table query statements.

The purpose of an SQL query for a database table.

  • CREATE TABLE – यह SQL क्वेरी कमांड स्टेटमेंट एक नई डेटाबेस टेबल क्रिएट करता है
  • INSERT – यह SQL क्वेरी कमांड स्टेटमेंट मौजूदा डेटाबेस टेबल में एक नया टेबल रिकॉर्ड इनफार्मेशन को ऐड करता है
  • SELECT – यह SQL क्वेरी कमांड स्टेटमेंट मौजूदा डेटाबेस टेबल से एक रिकॉर्ड डाटा स्टेटमेंट को सलेक्ट कर डिस्प्ले करता है
  • UPDATE – यह SQL क्वेरी कमांड स्टेटमेंट एक मौजूदा डेटाबेस टेबल रिकॉर्ड डाटा इन्फो को अपडेट करता है
  • DELETE – यह SQL क्वेरी कमांड स्टेटमेंट मौजूदा डेटाबेस टेबल से एक टेबल रिकॉर्ड इन्फो को डिलीट करता है
  • WHERE – यह SQL क्वेरी कमांड स्टेटमेंट में किसी पर्टिकुलर वेयर क्लॉज़ के साथ एक रिकॉर्ड डाटा को फ़िल्टर करता है
  • ORDER BY – यह SQL क्वेरी कमांड स्टेटमेंट एक पर्टिकुलर सीक्वेंस आर्डर में टेबल डाटा इन्फो के रिज़ल्ट को असेंडिंग या डीसेंडिंग आर्डर में सॉर्ट करता है
  • GROUP BY – यह SQL क्वेरी कमांड स्टेटमेंट एक पर्टिकुलर आर्डर में टेबल डाटा रिकॉर्ड को ग्रुप करता है
  • JOIN – यह SQL क्वेरी कमांड स्टेटमेंट एक टेबल से अन्य डाटा इन्फो को ज्वाइन या ग्रुप करता है

For example, EMPLOYEE Sorting employee records in a table by salary.

cursor.execute(

“SELECT * FROM Employee ORDER BY Salary DESC”

)

for row in cursor.fetchall():

print(row)

Using the commit() and rollback() functions in SQL databases.

SQL डेटाबेस टेबल में जब कोई क्वेरी या डेटाबेस इनफार्मेशन मॉडिफाई या अपडेट होती है, जैसे INSERT, UPDATE, या DELETE, तो सामान्य रूप से इन मॉडिफिकेशन को कमिट करने की ज़रूरत होती है।

connection.commit()

यदि SQL डेटाबेस में कमांड स्टेटमेंट में कुछ गलत हो जाता है, तो उस डेटाबेस ट्रांज़ैक्शन को रोल बैक कर रिवर्ट किया जा सकता है.

connection.rollback()

This is a simple database pattern.

try:

cursor.execute(

“UPDATE Employee SET Salary  = ? WHERE Emp_id = ?”,

(89000, 105)

)

connection.commit()

except Exception:

connect.rollback()

यह SQL डेटाबेस में कमांड स्टेटमेंट में एक असफल डेटाबेस ऑपरेशन को अनचाहे बदलाव पीछे छोड़ने से रोकने में मदद करता है।

Using the with clause for SQLite databases.

पाइथन प्रोग्रामिंग लैंग्वेज के SQLite कनेक्शन को कॉन्टेक्स्ट मैनेजर के तौर पर भी यूज़ किया जा सकता है.

import sqlite3

with sqlite3.connect(“employee.db”) as connection:

cursor = connection.cursor()

cursor.execute(

“INSERT INTO Employee (Emp_id, Emp_name, Department, Salary) VALUES (?, ?, ?, ?)”,

(107 “Amit”, “House Keeping”, 78000)

)

यह मेथड पाइथन यूजर को एक ट्रांज़ैक्शन को मैनेज करने का इजी मेथड प्रोवाइड करता है।

SQL Injection Concepts in Python.

पाइथन प्रोग्रामिंग लैंग्वेज से SQL कमांड स्टेटमेंट रन करते समय सबसे ज़रूरी रूल्स में से एक यह है.

इसमें यूज़र इनपुट को सीधे ऐड कर SQL क्वेरी न बनाएं।

Avoid this type of syntax.

query = “SELECT * FROM Employee WHERE emp_name = ‘” + emp_name + “‘”

cursor.execute(query)

Instead, Python users should use a parameterized query.

cursor.execute(

“SELECT * FROM Employee WHERE emp_name = ?”,

(emp_name,)

)

Connector to MySQL database/Python.

cursor.execute(

“SELECT * FROM Employee WHERE name = %s”,

(emp_name,)

)

डेटाबेस पैरामीटर वाली क्वेरी, एप्लिकेशन को SQL इंजेक्शन से बचाने में हेल्प करती हैं।

Some Key Points of Python SQL Databases.

पाइथन प्रोग्रामिंग लैंग्वेज में डेटाबेस लाइब्रेरी के ज़रिए SQL क्वेरी स्टेटमेंट को एक्सेक्यूट किया जा सकता है।

Here are some basic SQL Database steps.

  • सबसे पहले पाइथन को एक डेटाबेस से कनेक्ट करें।
  • इसके बाद एक कर्सर बनाएं।
  • अब SQL डेटाबेस क्वेरी स्टेटमेंट लिखें।
  • execute() फंक्शन का इस्तेमाल करके डेटाबेस क्वेरी रन करे।
  • ज़रूरत पड़ने पर डेटाबेस में जरूरी बदलाव करें।
  • SELECT क्वेरी के साथ डेटाबेस टेबल से रिज़ल्ट पाएं।
  • अंत में ओपन डेटाबेस कनेक्शन बंद करें।

The basic Python database connection pattern is.

import sqlite3

connection = sqlite3.connect(“employee.db”)

cursor = connection.cursor()

cursor.execute(“SELECT * FROM employee”)

for row in cursor.fetchall():

print(row)

connection.close()

A key point to remember when executing SQL queries using Python.

पाइथन प्रोग्रामिंग लैंग्वेज प्रोग्राम के लॉजिक को हैंडल करता है, जबकि SQL डेटाबेस सॉफ्टवेयर का यूज़ कनेक्टेड डेटाबेस पर मल्टीप्ल डेटाबेस टेबल ऑपरेशन को हैंडल करता है। साथ में, ये डेटाबेस एप्लिकेशन को डेटा को अच्छे से स्टोर, रिट्रीव, मॉडिफाई और मैनेज करने में हेल्प करते हैं।

Leave a Reply