一. pymysql介绍
- pymysql 是在 Python3.x 版本中用于连接和操作 MySQL 服务器的一个库.
- 引入方式: pip install pymysql
二. 连接数据库的完整流程
1. 引入pymysql模块
import pymysql # 引入第三方库pymysql
2. 创建连接对象
import pymysql
cnn = pymysql.connect(
user="user", # 用户名
password="password", # 密码
port=端口号, # 默认为3306,且此处为整数类型
database="数据库名",
host="连接IP地址",
charset="utf8")
3. 使用连接对象创建游标对象
1. 游标对象是通过链接对象进行创建的
2. 游标展示数据的四种方式:
1. Cursor ---> 默认使用, 元组套元组
2. SSCursor ---> 元组套元组的方式的生成器(优雅的迭代器)
3. Dictcursor ---> 列表套字典的方式
4. SSDictcursor ---> 列表套字典的方式的生成器
3. 创建语法(以最常用的列表套字典的形式举例)
cursor = database.cursor(cursor=pymysql.cursors.DictCursor
# cursor为游标对象名, 可按自己习惯自定义名字
4. 准备需要使用的sql语句
- 按照自己的需求准备sql语句, 不熟悉的同学可以点击下方链接, 复习我上期写的MySQL基础入门课程.
- MySQL基础入门知识
5. 使用游标对象执行sql语句(如果是数据修改的操作,会返回受影响的行数)
# 执行语句比较简单, 就只写了这一个
cursor.execute(SQL语句)
6. 如果执行语句是查询操作,需要使用游标对象获取查询结果
1. 获取结果的语法:
1. 游标对象.fetchall() ---> 返回查询到的所有数据
2. 游标对象.fetchone() ---> 返回查询到的一条记录
3. 游标对象.fetchmany(记录数) ---> 返回查询到的指定记录数
2. 切换数据库语法:
1. 由链接对象取操作切换数据库
2. 链接对象.select_db("数据库名)
3. 具体语句(用一个变量data接受存储数据)
data = cursor.fetchall()
7. 关闭游标对象
游标对象.close()
8. 关闭连接对象
连接对象.close()
三. 完整的简易源码
# 1. 引入模块
import pymysql
# 2. 连接数据库
cnn = pymysql.connect(
user="root",
password="******",
port=3306,
database="mytest",
host="localhost",
charset="utf8"
)
# 3. 创建游标对象
my_cursor = cnn.cursor(cursor=pymysql.cursors.DictCursor)
# 4. SQL语句
my_sql = "select * from student"
# 5. 执行SQL ---> 通过游标对象执行
my_cursor.execute(my_sql)
# 6. 查看结果
data = my_cursor.fetchall()
# 7. 关闭连接
my_cursor.close()
database.close()
# 打印获得的数据, 检查执行是否正确
print(data)