Python 使用 PyMySQL 连接数据库,并实现简单的增删改查。
什么是 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:
pip install PyMySQL
数据库连接
连接数据库前,请先确认以下事项:
- 您已经创建了数据库
- 在数据库中您已经创建了表
- 开启了数据库服务
- 在你的机子上已经安装了 Python MySQLdb 模块。
实例:连接数据库
# 建立连接
conn = pymysql.connect(host='数据库地址', port='端口',
user='用户名', password='密码',
database='库名', charset='utf8mb4')
"""
example01- 连接MySQL。
-- 安装三方库
-- pymysql-- > 纯python编写,安装一定成功
-- mysqlclient---> 底层使用c编写,安装可能不成功
-- 在写sql语句决定不能使用字符串格式化,拼接
-- 统一使用%s,占位符
Author:小白菜是真的菜
Date:2021/8/30
"""
import sys
import pymysql
# 第一步:创建连接,
# 在默认情况下创建连接,相当于开启了一个事务环境
# 如果连接失败,我们可以通过连接对象使用rollback()回滚。
conn = pymysql.connect(host='localhost', port=3306,
user='root', password='123456',
database='hrs', charset='utf8mb4'
)
print(conn)
try:
# 第二步:获取游标对象
with conn.cursor() as cursor:
# 第三步;通过游标对象向数据库发出sql并获得结果。(默认手动提交,得手动启动)
affected_rows = cursor.execute('insert into tb_dept values(50,"研发部",“天津”)')
# affected_rows = cursor.execute( 'insert into tb_dept values(%s,%s,%s)', (no, name, loc))
if affected_rows == 1:
print('添加成功')
# 第四步:手动提交(执行操作)
conn.commit()
# sys.audit() 引发异常,报错使程序结束运行。
except