A MySQL az egyik legnépszerűbb relációs adatbázis. Lehetővé teszi adatok tárolását táblákban, és kapcsolatok létrehozását a táblák között. Az adatbázis-kiszolgálóként futó MySQL használatához kódot kell írnia a csatlakozáshoz.

A legtöbb programozási nyelv, például a Python támogatja ezt. Valójában a Pythonban többféle megközelítés is használható, mindegyiknek megvannak a maga előnyei.

Készítse elő MySQL konfigurációját

Az adatbázishoz való csatlakozáshoz a következő értékekre van szükség:

  • Gazdagép: a MySQL-kiszolgáló helye, a localhost, ha ugyanazon a számítógépen futtatja.
  • Felhasználó: a MySQL felhasználónév.
  • Jelszó: a MySQL jelszó.
  • Adatbázis neve: annak az adatbázisnak a neve, amelyhez csatlakozni kíván.

Mielőtt csatlakozna a MySQL adatbázishoz, hozzon létre egy új könyvtárat:

mkdir python-mysql

Állítson be egy Python virtuális környezetet

A Python virtuális környezet lehetővé teszi csomagok telepítését és parancsfájlok futtatását elszigetelt környezetben. Amikor te hozzon létre egy virtuális környezetet

instagram viewer
, ezután telepítheti benne a Python és a Python-függőségek verzióit. Így elkülönítheti a különböző verziókat, és elkerülheti a kompatibilitási problémákat.

Csatlakozzon a MySQL-hez a mysqlclient használatával

Az mysqlclient Az illesztőprogram egy felület a MySQL adatbázis-kiszolgálóhoz, amely biztosítja a Python adatbázis-kiszolgáló API-t. C-ben van írva.

Futtassa a következő parancsot a virtuális környezetben a mysqlclient telepítéséhez:

csipog telepítés mysqlclient

Ha Linuxos gépet használ, először telepítse a Python 3 és a MySQL fejlesztési fejléceit és könyvtárait.

# Debian / Ubuntu
sudo apt-get telepítés python3-dev alapértelmezett-libmysqlclient-dev épít-alapvető

# Red Hat / CentOS
sudo yum telepítés python3-devel mysql-devel

Windows rendszeren a mysqlclient bináris kerékfájl használatával telepíthető. Töltse le a platformjával kompatibilis mysqlclient fájlt innen Christoph Gohlke nem hivatalos gyűjteménye. Ezután használhatja a letöltött kerékfájlt pip-vel a mysqlclient telepítéséhez, így:

csipogtelepítésc:\\mysqlclient‑1.3.13cp36cp36mwin_amd64.whl

A telepítés befejezése után használja a következő csatlakozási kódot a MySQL adatbázishoz való csatlakozáshoz:

import MySQLdb

connection = MySQLdb.connect(
host="helyi kiszolgáló",
user="<mysql_user>",
passwd="<mysql_password>",
db="<adatbázis név>"
)

kurzor = kapcsolat.cursor()
cursor.execute("válassza kiadatbázis();")
db = cursor.fetchone()

ha db:
nyomtatás("Ön'újra csatlakoztatva az adatbázishoz: ", db)
más:
nyomtatás('Nem kapcsolódik.')

Ebben a programban a következők állnak rendelkezésére:

  • Importált mysqlclient.
  • Kapcsolati objektumot hozott létre a MySQLdb.connect() segítségével.
  • Az adatbázis-konfiguráció részleteit átadta a MySQLdb.connect()-nek.
  • Létrehozott egy kurzorobjektumot a MySQL-lel való interakcióhoz.
  • A kurzorobjektumot használta a csatlakoztatott MySQL adatbázis verziójának lekérésére.

Ne felejtse el megváltoztatni az adatbázis adatait a sajátjával.

Csatlakozzon a MySQL-hez a mysql-connector-python használatával

mysql-connector-python az Oracle által támogatott hivatalos kapcsolati illesztőprogram. Ez is tiszta Pythonban van megírva.

Telepítse pip-en keresztül a használat megkezdéséhez.

csipog telepítés mysql-connector-python

Csatlakozzon a MySQL-hez a következő csatlakozási kóddal.

import mysql.connector
tól től mysql.connector importHiba

kapcsolat = mysql.connector.connect (host="helyi kiszolgáló",
user="<mysql_user>",
passwd="<mysql_password>",
db="<adatbázis név>")

próbálja meg:
hakapcsolat.is_connected():
kurzor = kapcsolat.cursor()
cursor.execute("válassza kiadatbázis();")
db = cursor.fetchone()
nyomtatás("Ön'újra csatlakoztatva a dtabase-hoz: ", db)
kivéve Hibamint e:
nyomtatás("Hibamíg kapcsolódás a MySQL-hez", e)
végül:
hakapcsolat.is_connected():
kurzor.Bezárás()
kapcsolat.Bezárás()
print("MySQL kapcsolat van zárva")

A fenti csatlakozási kód ugyanazt teszi, mint a mysqclient csatlakozási kód.

Miután létrehozta a kapcsolati objektumot, létrehozhat egy kurzort, amellyel lekérdezéseket hajthat végre az adatbázisban.

Ez a csatlakozási program is használja a próbáld… elkapni Blokk. A hibaosztály, tól mysql.connector, lehetővé teszi az adatbázishoz való csatlakozáskor felmerülő kivételek észlelését. Ez leegyszerűsíti a hibakeresést és a hibaelhárítást.

Csatlakozzon a MySQL-hez PyMySQL használatával

Az PyMySQL kapcsolati illesztőprogram a MySQLdb helyettesítője. Használatához Python 3.7-es vagy újabb verzióját kell futtatnia, és a MySQL-kiszolgálónak 5-ös verziójúnak kell lennie. 7, vagy újabb. Ha MariaDB-t használ, annak 10.2-es vagy újabb verziójúnak kell lennie. Ezeket a követelményeket megtalálja a PyMySQL Github oldal.

A PyMySQL telepítéséhez futtassa a következő parancsot.

csipog telepítés PyMySQL

Csatlakozzon a MySQL-hez PyMySQL használatával ezzel a kóddal.

import pymysql

kapcsolat = pymysql.connect (host="helyi kiszolgáló",
user="<mysql_user>",
jelszó="<mysql_password>",
adatbázis="<adatbázis név>")

próbálja meg:
kurzor = kapcsolat.cursor()
cursor.execute("válassza kiadatbázis();")
db = cursor.fetchone()
nyomtatás("Ön'újra csatlakoztatva az adatbázishoz: ", db)
kivéve pymysql. Hiba mint e:
nyomtatás("Hibamíg kapcsolódás a MySQL-hez", e)
végül:
kurzor.Bezárás()
kapcsolat.Bezárás()
print("MySQL kapcsolat van zárva")

Miután létrehozta a kapcsolatot, és létrehozta a kurzorobjektumot, megkezdheti a létrehozást SQL lekérdezések.

Csatlakozzon a MySQL-hez aiomysql használatával

Az aiomysql kapcsolati illesztőprogram olyan, mint a PyMySQL aszinkron verziója. Hozzáférést biztosít egy MySQL adatbázishoz az asyncio keretrendszerből.

Az aiomysql használatához a Python 3.7+ és a PyMySQL telepítése szükséges a fejlesztői környezetbe.

Futtassa a következő parancsot az asyncio és az aiomysql telepítéséhez.

csipog telepítés asyncio
csipog telepítés aiomysql

Az aiomysql segítségével a Python-t a MySQL-hez csatlakoztathatja egy alapvető kapcsolati objektum és egy kapcsolatkészlet használatával.

Íme egy példa, amely bemutatja, hogyan csatlakozhat a MySQL adatbázishoz egy kapcsolati objektum segítségével.

import asyncio
import aiomysql
loop = asyncio.get_event_loop()

asyncdefpython_mysql():
kapcsolat = vár aiomysql.connect (host="helyi kiszolgáló",
user="<mysql_user>",
jelszó="<mysql_password>",
adatbázis="<adatbázis név>")

cur = várják connect.cursor()
várja a cur.execute("válassza kiadatbázis();")
db = várják cur.fetchone()
nyomtatás("Ön'újra csatlakoztatva az adatbázishoz: ", db)
várják cur.close()
kapcsolat.Bezárás()

hurok.run_until_complete(python_mysql())

Az adatbázis-kapcsolati objektumokkal ellentétben a kapcsolatkészlet lehetővé teszi az adatbázis-kapcsolatok újrafelhasználását. Ezt úgy teszi, hogy fenntart egy nyitott kapcsolatokat, és kérésre hozzárendeli azokat. Amikor egy ügyfél kapcsolatot kér, a rendszer hozzárendel egyet a készletből. Miután az ügyfél lezárja a kapcsolatot, a kapcsolat visszatér a készlethez.

A medencén keresztüli csatlakozás alapkódja a következő:

import asyncio
import aiomysql
loop = asyncio.get_event_loop()
asyncdefpython_mysql():
pool = vár aiomysql.create_pool (host="helyi kiszolgáló",
user="<mysql_user>",
jelszó="<mysql_password>",
adatbázis="<adatbázis név>", loop=loop, autocommit=False)

asyncval vel pool.acquire() mint kapcsolat:
kurzor = várják connect.cursor()
várja a cur.execute("válassza kiadatbázis();")
db = várják cur.fetchone()
nyomtatás("Ön'újra csatlakoztatva az adatbázishoz: ", db)

medence.Bezárás()
várják pool.wait_closed()

hurok.run_until_complete(python_mysql())

Ennek a programnak ki kell nyomtatnia a MySQL azon verzióját, amelyhez csatlakozott a futtatásakor.

PostgreSQL-adatbázis kezelése

Ez a cikk számos módszert mutat be, amellyel Python-alkalmazásokat csatlakoztathat a MySQL-hez. Ezen módszerek mindegyike lehetővé teszi az adatbázissal való interakciót és lekérdezések végrehajtását.

Miután csatlakozott egy MySQL adatbázishoz, adatlekérdezéseket és adatbázis-tranzakciókat hajthat végre. Létrehozhat egy Python alkalmazást, csatlakoztathatja a MySQL-hez, és elkezdheti az adatok tárolását.