本文整理自网络,侵删。
目录
- 1. PyMySQL(https://pypi.org/project/PyMySQL/)
- 2. MySQLdb(https://mysqlclient.readthedocs.io/user_guide.html)
- 3. QTSQL(https://doc.qt.io/qt-5/qtsql-index.html)
- 4. Psycopg2(https://pypi.org/project/psycopg2/)
- 5. SuperSQLite(https://github.com/plasticityai/supersqlite)
【51CTO.com快译】 作为一种驱动程序,数据库连接器(database connector
)的工作方式类似于,我们将软件接口连接到特定的数据库上,以实现适配器的基本功能。现如今,Python已经成为了一种在全球范围内,被广为使用的编程语言。因此,我们有必要了解与Python有关的数据库连接器。
通常,我们可以通过作为Python标准数据库接口的Python DB-API
,将MySQLdb
模块运用于MySQL
之上。不过,由于该模块独立于任何其他数据库引擎,因此我们需要额外地通过编写Python脚本,来实现对于其他数据库引擎的访问。而且,该API与Python 3并不兼容,因此我们需要用到各种Python类型的数据库连接器。接下来我们就来看一下适合大多数Python程序员的、五大Python SQL数据库连接器,及它们安装的各种优缺点
1. PyMySQL(https://pypi.org/project/PyMySQL/)
如您所知,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
等。
2. MySQLdb(https://mysqlclient.readthedocs.io/user_guide.html)
作为MySQL数据库服务器上能够兼容线程(thread-compatible)
的接口,MySQLdb提供了针对Python数据库的API。
安装与使用:
您可以通过运行如下命令,在自己的PC上安装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 installPythonpython-devel mysql-devel redhat-rpm-config gcc #ForPythoncommand 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代码。
- 不但需要自行管理指针,而且无法进行任何缓存、或参数化。
- 如果不重写所有的数据库代码,则无法切换到不同的数据库后端。
3. QTSQL(https://doc.qt.io/qt-5/qtsql-index.html)
作为另一种数据库连接器,QTSQL可被用于将数据库与各种PYQT5
应用程序相集成。值得注意的是,由于QT是一种GUI工具包,因此QTSQL
主要被用于UI类应用程序。
相关阅读 >>
navicat premium永久激活码+激活教程 附激活补丁下载
一款高颜值且免费的 sql 开发工具之beekeeper studio详解
更多相关阅读请进入《Sqlite》频道 >>
数据库系统概念 第6版
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » 适合Python项目的五大SQL连接器
相关推荐
评论
管理员已关闭评论功能...