安装
Python3是PyMySQL,2的话是mysqldb
pip install PyMySQL
导入模块
# 导入MySQL驱动模块:
import pymysql
打开数据库连接
# 只列出常用配置,其他略
config = {
'host': "localhost", # 本地的话就是这个
'user': "root", # 输入你的数据库账号
'password': "123456", # 以及数据库密码
'db': "test", # 数据库名(database名)
'charset': 'utf8mb4' # 读取中文不想乱码的话,记得设置这个
}
# 打开数据库连接
db = pymysql.connect(**config) # 使用关键字参数特性,这样好看一些
创建一个游标对象
别问我游标对象是什么,就理解为用这个来操作数据库的读取。
随着读取,这个位置会变化
可以一次读取一行、多行、或全部
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
执行SQL语句
SQL语句例如是select * from test
这样
cursor.execute(SQL)
读取
# 读取一行
data = cursor.fetchone() # 一维tuple
# 读取多行
data = cursor.fetchmany(2) # 2就是两行,形成一个二维tuple
# 读取所有
data = cursor.fetchall() # 形成一个二维tuple
提交更改(非查询需要提交更改才行)
db.commit()
回滚更改
db.rollback()
提交回滚处理代码:
# 捕捉错误
try:
# 使用 execute() 方法执行 SQL
cursor.execute(SQL)
# 提交
db.commit()
# 如果捕捉到错误,则回滚
except BaseException as e:
print(e)
# 发生错误时回滚
db.rollback()
断开链接
db.close()
一个完整的数据库操作应是
- 导入模块,返回
pymysql
; - 打开数据库连接,返回
db
; - 创建一个游标对象,返回
cursor
; - 执行SQL语句,如果是非查询,还需要通过
db.commit()
提交,或发生错误后回滚db.rollback()
- 断开数据库连接;