آموزش اتصال به دیتابیس MySQL از طریق پایتون

2 دیدگاه
دسته بندی: آموزش, پایگاه داده
آموزش اتصال به mySQL از طریق پایتون

MySQL یکی از مروف‌ترین دیتابیس‌ها است و در این مقاله می‌خواهیم چگونگی اتصال به آن را از طریق زبان برنامه‌نویسی پایتون را آموزش دهیم.

اگر می‌خواهید اطلاعات بیشتری راجع به این دیتابیس داشته باشید، مقاله MySQL چیست را بخوانید.

همچنین برای آشنایی با Python هم می‌توانید مقاله پایتون چیست را بخوانید.

اتصال به MySQL از طریق پایتون

برای انجام اینکار، ابتدا باید حداقل یکی از پکیج‌های زیر را در Virtual Environment پایتون (فضای اختصاصی این زبان) نصب کنید:

  • Mysqlclient: این پکیج حاوی ماژول MySQLdb است. با زبان C نوشته شده و یکی از پراستفاده‌ترین پکیج‌های پایتون برای اتصال به MySQL است.
  • :mysql-connector-python این پکیج حاوی ماژول connector است و تماماً با زبان پایتون نوشته شده است.
  • PyMySQL: این پکیج حاوی ماژول PyMySQL است و تماماً با زبان برنامه‌نویسی پایتون نوشته شده است.

نکته: هر دو پکیج از Python’s Portable SQL Database API پشتیبانی می‌کنند؛ یعنی اگر بخواهید از پکیجی به پکیج دیگر منتقل شوید، همچنان تمام کدها برای‌تان در دسترس خواهند بود.

تنظیم Virtual Environment پایتون و نصب یک پکیج MySQL

برای تنظیم VE پایتون و نصب یک پکیج MySQL، اقدامات زیر را به‌ترتیب انجام دهید:

  • توسط SSH وارد اکانت‌تان شوید.
  • برای خلق Virtual Environment، از دستور زیر استفاده کنید:
cd ~
virtualenv sqlenv

در دستور بالا، نام Virtual Environment را sqlnve در نظر گرفتیم. دستورهای بعدی هم چنین در نظر می‌گیرند که نام VE همین است. البته که می‌توانید هر نامی که دوست دارید انتخاب کنید؛ اما اگر اینکار را کردید، حواس‌تان باشد که در دستورات بعدی، به‌جای sqlnve نامی که خودتان انتخاب کردید را بنویسید.

حتما بخوانید:  همه‌چیز درباره استفاده از پروتکل FTP در دایرکت ادمین

همچنین اگر از نسخه دستکاری شده پایتون استفاده می‌کنید، می‌توانید آن را در Virtual Environment مشخص کنید.

مثلاً برای نصب یک نسخه تنظیم‌شده توسط کاربر پایتون 3.8 در Virtual Environment باید دستور زیر را بنویسید:

virtualenv -p /home/username/bin/python3.8 sqlenv
  • برای فعال‌سازی Virtual Environment پس از ساخت، باید دستور زیر را وارد کنید:
source sqlenv/bin/activate

نکته: از اینجا به بعد، محیط خط فرمان (Command Prompt) به‌صورت پیش‌فرض در نظر می‌گیرد که شما در حال استفاده از sqlnve هستید. تمام دستورات بعدی هم با همین فرض انجام می‌شوند. اگر از SSH خارج شده‌اید یا با دستور Deactive محیط پایتون را غیرفعال کرده‌اید، حتماً دقت کنید که مجدداً آن را فعال کرده باشید تا برویم سراغ دستورات بعدی!

برای به‌روزرسانی pip در Virtual Environment دستور زیر را بنویسید:

pip install -U pip
  • برای نصب هرکدام از پکیج‌ها، باید یکی از دستورات زیر را وارد کنید:

برای نصب پکیج mysqlclient از دستور زیر استفاده کنید:

pip install mysqlclient

برای نصب پکیج mysql-connector-python، از دستور زیر استفاده کنید:

pip install mysql-connector-python

برای نصب پکیج PyMySQL، از دستور زیر استفاده کنید:

pip install pymysql

همان‌طور که گفتیم، حالا همه‌چیز مهیا است. نمونه کد پایتون که در ادامه آورده‌ایم، چگونگی این اتصال را شرح می‌دهد. لازم به ذکر است که این کد، در نسخه‌های 2.7 و 3.x پایتون کار می‌کند.

#!/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()

نکته: در کد بالا، باید به‌جای username، نام کاربری پایگاه داده mysql را وارد کنید. به‌جای password هم از کلمه عبور این نام کاربری استفاده کنید. همچنین باید به‌جای dbname نام پایگاه داده یا دیتابیس را بنویسید.

حتما بخوانید:  چگونه وردپرس خود را امن کنیم؟

این مثال مجموعه‌ای از کانکشن‌ها را ایجاد می‌کند که همگی از یک دیتابیس استفاده می‌کنند؛ اما از طریق ماژول‌های مختلف.

از آنجایی که هرسه ماژول از رابط کاربری Portable SQL Database API استفاده می‌کنند، توانایی دارند که از کد در doQuery() استفاده کنند. بدون نیاز به هیچ‌گونه تغییر.

وقتی یک Connection Object متصل به دیتابیس داشته باشید، می‌توانید Cursor Object ایجاد کنید. این آبجکت به شما امکان اجرای excute() می‌دهد. به زبان ساده، می‌توانید با آن دستورات اصلی و ساده پایتون را اجرا کنید. مثلا در مثال بالا، SELECT از این نوع دستورات است.

نکته: همان‌طور که می‌بینید، Python’s Portable PostgreSQL Database API امکان تغییر بین ماژو‌ل‌های مختلف این دیتابیس را بسیار ساده می‌کند. در مثال بالا، تنها بخش‌هایی که نیاز به تغییر دارند، Import و Connect هستند.

جمع‌بندی

این بود آموزش اتصال به دیتابیس MySQL، از طریق زبان‌ برنامه‌نویسی پایتون. اگر دوست دارید، می‌توانید مقاله پایگاه داده چیست را بخوانید تا با کلیت این مفهوم بهتر آشنا شوید.

در نهایت خواهشمندیم اگر سوال یا ابهامی در این زمینه برای‌تان باقی مانده است، در قسمت کامنت‌ها بنویسید تا متخصصان ما پاسخ‌تان را بدهند.

برچسب ها:
امتیاز شما

مایلید هر دو هفته یک ایمیل مفید دریافت کنید؟

ما را در شبکه‌های اجتماعی دنبال کنید

همچنین شاید دوست داشته باشید!

آموزش نصب و پیکربندی WAF

آموزش نصب و پیکربندی WAF

0
Firewall به اختصار WAF، سرویس یا ماژولی برای افزایش امنیت وب‌سایت است که وظیفه کنترل ترافیک ورودی به وب‌سایت را بر عهده می‌گیرد. این نرم‌افزار…

نظرات کاربران

2 دیدگاه. دیدگاه تازه ای بنویسید

  • سلام
    mysql مال oracle
    مال microsoft نیست

    پاسخ
    • نیکان حیدری
      21 تیر 1400 09:03

      سلام و درود
      بله کاملاً صحیح میفرمایید. اشتباه نوشته بودیم
      ممنون از تذکرتون
      اصلاح شد

      پاسخ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.
شما برای ادامه باید با شرایط موافقت کنید

فهرست