Python是一种非常流行的编程语言,具有易学性、可读性强、跨平台等优点。在Python应用程序中,数据库是必不可少的一部分。Python提供了各种数据库API和模块,包括Python数据库API规范、SQLite和MySQL等数据库持久性API。
pymysql是一个Python程序员使用的纯Python MySQL驱动程序,实现了Python数据库API v2.0规范。由于它是一个纯Python实现,因此可以在任何支持Python解释器的平台上运行。本文将向您介绍如何在Python中安装pymysql。
一、安装Python和pip
在安装pymysql之前,您需要确保已经在您的计算机上安装了Python解释器。您可以在https://www.python.org/downloads/下载适用于您的操作系统的Python安装程序。安装Python之后,您需要安装pip,pip是Python 语言专用的软件安装工具,可以管理Python包的安装和升级。
python3 -m ensurepip --default-pip
将会使用 python 3.x 安装python3的官方pip。
二、安装pymysql
安装过程很简单,您可以通过pip命令轻松安装pymysql。
pip install pymysql
或者从源码安装,以pymysql-0.8.0为例:
wget https://pypi.python.org/packages/c4/94/24612ebbf8b10a5b95f7fc9913ebf0174f50b91f004bdb2a288d3d0f16c6/PyMySQL-0.8.0.tar.gz
tar -zxvf PyMySQL-0.8.0.tar.gz
cd PyMySQL-0.8.0
python setup.py install
从Github源码安装:
git clone https://github.com/PyMySQL/PyMySQL.git
cd PyMySQL
python setup.py install
三、使用pymysql
安装完成后,您可以使用pymysql连接MySQL并执行查询等操作。下面是一个样例程序,用于在mysql数据库中创建一个表并向其中插入数据。
import pymysql
# 打开数据库连接
db = pymysql.connect("localhost", "testuser", "test123", "TESTDB")
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# 如果数据表已经存在使用 execute() 方法删除表。
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
# 创建数据表SQL语句
sql = """CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT )"""
cursor.execute(sql)
# 数据库插入操作
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Mac', 'Mohan', 20, 'M', 2000)"
try:
# 执行sql语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# 如果发生错误则回滚
db.rollback()
# 查询结果
cursor.execute("SELECT * from EMPLOYEE")
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
# 打印结果
print("fname=%s,lname=%s,age=%d,sex=%s,income=%d" % (fname, lname, age, sex, income ))
# 关闭数据库连接
db.close()
以上示例程序仅用于演示如何使用pymysql连接并在mysql数据库中执行操作。请根据您自己的需要修改连接信息和SQL语句。
四、安装时遇到问题?
如果您安装过程中遇到问题,请确认您的Python解释器版本是否受支持,以及您的Python环境是否正确设置。您可以在https://github.com/PyMySQL/PyMySQL/issues中发起一个issue寻求帮助。
如果您遇到了无法解决的问题,请考虑使用其他Python MySQL数据库驱动程序,例如mysql-connector-python、oursql或pony等。