作为一种驱动程序,数据库连接器(database connector)的工作方式类似于,我们将软件接口连接到特定的数据库上,以实现适配器的基本功能。现如今,Python已经成为了一种在全球范围内,被广为使用的编程语言。因此,我们有必要了解与Python有关的数据库连接器。
通常,我们可以通过作为Python标准数据库接口的Python DB-API,将MySQLdb模块运用于MySQL之上。不过,由于该模块独立于任何其他数据库引擎,因此我们需要额外地通过编写Python脚本,来实现对于其他数据库引擎的访问。而且,该API与Python 3并不兼容,因此我们需要用到各种Python类型的数据库连接器。
下面,我将向您介绍当前流行的、适合大多数Python程序员的、五大Python SQL数据库连接器,并讨论它们安装和各种的优缺点。
如您所知,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()
优点
缺点
作为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")
优点
缺点
作为另一种数据库连接器,QTSQL可被用于将数据库与各种PYQT5应用程序相集成。值得注意的是,由于QT是一种GUI工具包,因此QTSQL主要被用于UI类应用程序。
安装与使用
由于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(),以打开并访问数据库。
优点
缺点
Psycopg 是Python编程语言中最流行的PostgreSQL数据库适配器。它的主要特点是完整地实现了PythonDB API 2.0的规范和线程的安全性(即,多个线程可以共享同一个连接)。由于它是为具有大量多线程的应用程序而设计的,因此此类应用不但会创建和销毁大量的指针,而且会生成大量并发的INSERT或UPDATE。
安装和指南
您可以通过运行如下命令,在自己的PC上安装psycopg2:
- 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库和驱动程序,SuperSQLite将原有内置的SQLite包,替换成了为每个平台原生的、预编译好(pre-compiled)的新版本SQLite,及其SQLite扩展。
安装和指南
您可以通过运行如下命令,在自己的PC上安装SuperSQLite:
- bash
- pip install supersqlite
完成安装后,运行如下Python代码即可使用:
- from supersqlite import sqlite3
- conn = sqlite3.connect('databasefile.db')
优点
缺点
综上所述,我们一同了解了何为数据库连接器、为何要在Python中使用数据库连接器,以及五种最常用的Python SQL数据库连接器。此外,我们还讨论了每种连接器的安装步骤,及其各自的优缺点。
分享文章:适合Python项目的五大SQL连接器
本文网址:http://www.mswzjz.cn/qtweb/news21/387871.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能