Python3 MySQL 数据库连接 - PyMySQL 驱动
python3 mysql 数据库连接 - pymysql 驱动
python3 使用 pymysql 驱动来连接 mysql 数据库,并实现对 mysql 数据库的增删改查操作。在实际的项目中,我们通常会使用数据库连接池 dbutils 管理数据库连接。dbutils 是一个第三方库,可以通过 pip3 安装。
什么是 pymysql?
pymysql 是在 python3.x 版本中用于连接 mysql 服务器的一个库,python2中则使用mysqldb。
pymysql 遵循 python 数据库 api v2.0 规范,并包含了 pure-python mysql 客户端库。
pymysql 安装
在使用 pymysql 之前,我们需要确保 pymysql 已安装。
pymysql 下载地址:https://github.com/pymysql/pymysql。
如果还未安装,我们可以使用以下命令安装最新版的 pymysql:
$ pip3 install pymysql
如果你的系统不支持 pip 命令,可以使用以下方式安装:
1、使用 git 命令下载安装包安装(你也可以手动下载):
$ git clone https://github.com/pymysql/pymysql $ cd pymysql/ $ python3 setup.py install
2、如果需要制定版本号,可以使用 curl 命令来安装:
$ # x.x 为 pymysql 的版本号 $ curl -l https://github.com/pymysql/pymysql/tarball/pymysql-x.x | tar xz $ cd pymysql* $ python3 setup.py install $ # 现在你可以删除 pymysql* 目录
注意:请确保您有root权限来安装上述模块。
安装的过程中可能会出现"importerror: no module named setuptools"的错误提示,意思是你没有安装setuptools,你可以访问https://pypi.python.org/pypi/setuptools 找到各个系统的安装方法。
linux 系统安装范例:
$ wget https://bootstrap.pypa.io/ez_setup.py $ python3 ez_setup.py
数据库连接
连接数据库前,请先确认以下事项:
- 您已经创建了数据库 testdb.
- 在testdb数据库中您已经创建了表 employee
- employee表字段为 first_name, last_name, age, sex 和 income。
- 连接数据库testdb使用的用户名为 "testuser" ,密码为 "test123",你可以可以自己设定或者直接使用root用户名及其密码,mysql数据库用户授权请使用grant命令。
- 在你的机子上已经安装了 python mysqldb 模块。
- 如果您对sql语句不熟悉,可以访问我们的 sql基础教程
python 操作 mysql 范例
以下范例链接 mysql 的 testdb 数据库:
范例(python 3.0+)
#!/usr/bin/python3 import pymysql # 打开数据库连接 db = pymysql.connect("localhost","testuser","test123","testdb" ) # 使用 cursor() 方法创建一个游标对象 cursor cursor = db.cursor() # 使用 execute() 方法执行 sql 查询 cursor.execute("select version()") # 使用 fetchone() 方法获取单条数据. data = cursor.fetchone() print ("database version : %s " % data) # 关闭数据库连接 db.close()