本篇內容介紹了“適用于Python項目的SQL適配器有哪些優缺點”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
數據庫連接器是一種驅動程序,其工作方式類似于將軟件接口連接到特定數據庫供應商實現的適配器。
Python 的標準數據庫接口是 Python DB-API。此接口僅將 MySQLdb 模塊用于 MySQL。該模塊獨立于任何其他數據庫引擎,因此我們需要編寫 Python 腳本來訪問任何其他數據庫引擎。但是,這樣做與 Python 3 不兼容。因此 Python 為我們提供了 Python 數據庫連接器。
MySQL 是領先的開源數據庫管理系統。它是一個多用戶、多線程的數據庫管理系統。MySQL 在 Web 開發工作中特別受歡迎。
要在您的 PC 上安裝 PyMySQL,請運行以下命令:
bash pip install pymysql安裝后,我們現在可以通過運行以下 python 代碼來測試我們的數據庫連接器:
import pymysql
con = pymysql.connect('localhost', 'username',
'password', 'db_name’')
with con.cursor() as cur:
cur.execute('SELECT VERSION()')
version = cur.fetchone()
print(f'Database version: {version[0]}')
con.close()大多數公共 API 都與 mysqlclient 和 MySQLdb 兼容。
支持 Python 2 和 3。
支持 MySQL 和 MariaDB 服務器。
不支持 _mysql 提供的低級 API,如 data_seek、store_result 和 use_result。
MySQLdb 是流行的 MySQL 數據庫服務器的線程兼容接口,提供 Python 數據庫 API。
要安裝 MySQLdb 模塊,請使用以下命令:
bash
# For Ubuntu, use the following command -
sudo apt-get install python-pip python-dev libmysqlclient-dev
# For Fedora, use the following command -
sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc
#For Python command prompt, use the following command -
pip install MySQL-python要使用此連接器,請運行以下 Python 代碼:
from MySQLdb import _mysql
db=_mysql.connect()
db=_mysql.connect(host="localhost",user="username",
passwd="password",db="db_name")用 C 構建,因此運行速度很快。
純 SQL。
支持 MySQL。
不支持 Python 3。
需要您編寫 SQL 代碼。
需要你管理游標,不做任何緩存、參數化等。
如果不重寫所有數據庫代碼,就無法切換到不同的數據庫后端。
QTSQL 是一個數據庫連接器,用于將數據庫與 PYQT5 應用程序集成。需要注意的是,QTSQL 主要用于 UI 應用程序(畢竟 QT 是一個 GUI 工具包)。
QTSQL 預裝了 PYQT5。
要導入模塊,請使用以下 Python 代碼:
from PyQt5 import QtSql要連接到數據庫:
self.QSqlDatabase.addDatabase("QMYSQL")
self.db.setHostName("host_name")
self.db.setDatabaseName("database_name")
self.db.setUserName("username")
self.db.setPassword("password")QSqlDatabase.addDatabase上面代碼中的第一個參數用于添加驅動程序(例如,QPSQL、QMYSQL、QOCI、QODBC、QSQLITE 等)。接下來的四個命令setHostName()、setDatabaseName()、setUserName()和setPassword()初始化數據庫連接。QSqlDatabase.open()被調用以打開數據庫并在初始化后訪問它。
僅使用 Qt 庫。
它返回 Qt 對象,因此它將與 Qt 的標準小部件集成。
可以使用任何 Qt 支持的數據庫后端(MySQL、SQLite)。
還是需要你寫SQL。
Psycopg 是 Python 編程語言中最流行的 PostgreSQL 數據庫適配器。它的主要特點是完整實現了 Python DB API 2.0 規范和線程安全(多個線程可以共享同一個連接)。它是為大量多線程應用程序設計的,這些應用程序創建和銷毀大量游標并生成大量并發INSERTs 或UPDATEs。
要安裝,請運行以下命令:
bash pip install psycopg2安裝后,運行下面的Python代碼即可使用:
import psycopg2
try:
conn = psycopg2.connect("dbname='template1' user='dbuser' host='localhost' password='dbpass'")
except:
print "I am unable to connect to the database"
cur = conn.cursor()
cur.execute("""SELECT datname from pg_database""")快速高效。
支持多個連接和連接對象。
支持異步查詢。
缺乏文檔。
用于 Python 的增壓 SQLite 庫和驅動程序。該庫將內置 SQLite 包替換為為每個平臺本地預編譯的較新版本的 SQLite,以及本地預編譯的 SQLite 擴展。
要安裝,請運行以下命令:
bash pip install supersqlite安裝后,運行下面的Python代碼即可使用:
from supersqlite import sqlite3 conn = sqlite3.connect('databasefile.db')快速高效。
通過 HTTP 進行遠程流式傳輸。
全文檢索。
沒有已知的缺點。
“適用于Python項目的SQL適配器有哪些優缺點”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。