Python操作数据库完成接口测试
2021-08-19 本文已影响0人
Lydia1991
pymysql
pymysql属于Python的一个第三方库,用于操作mysql数据库。
安装:pip install mysql
连接数据库
操作数据库前需要连接数据库,pymsql通过connext方法来连接数据库,其中需要一些数据库的参数内容如:登录账号,登录密码,数据库地址,以及需要连接哪一个数据库。
import pymysql
# 连接数据库
count = pymysql.connect(
host = 'localhost', # 数据库地址
port = '3306', # 数据库端口号
user = 'root', # 数据库账号
password = '821006052', # 数据库密码
db = 'test', # 数据库表名
charset = 'gbk' # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
查找数据
查询内容肯定需要执行sql内容pymysql,这里通过execute的方法来执行sql命令并返回一共有多少数据,然后再通过fetchall()来显示sql查询结果的所有内容:
import pymysql
# 连接数据库
count = pymysql.connect(
host = 'localhost', # 数据库地址
port = '3306', # 数据库端口号
user = 'root', # 数据库账号
password = '821006052', # 数据库密码
db = 'test', # 数据库表名
charset = 'gbk' # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'select * from weather'
# 执行sql
a = db.execute(sql)
# 显示所有查询结果
result = fetchall()
print(result)
通过执行可以将这个表中的所有数据全部都查询出来。
pymysql 中也提供了只查询一行数据结果的方法:fetchone()
import pymysql
# 连接数据库
count = pymysql.connect(
host = 'localhost', # 数据库地址
port = '3306', # 数据库端口号
user = 'root', # 数据库账号
password = '821006052', # 数据库密码
db = 'test', # 数据库表名
charset = 'gbk' # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'select * from weather'
# 执行sql
a = db.execute(sql)
# 显示一行查询结果
for i in range(a):
result = db.fetchone()
print(result)
通过执行 fetchone()只能每次查询 1 行数据,然后通过 for 循环的方法让其也展示出来所有的数据内容。
修改数据
当我们在数据库上修改数据后,需要点击保存按钮,才会生效,Python操作数据库也是一样,这里通过commit()方法来实现。
import pymysql
# 连接数据库
count = pymysql.connect(
host = 'localhost', # 数据库地址
port = '3306', # 数据库端口号
user = 'root', # 数据库账号
password = '821006052', # 数据库密码
db = 'test', # 数据库表名
charset = 'gbk' # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'update weather set city="郑州" where id=1'
a = db.execute(sql)
count.commit()
通过执行上述代码,查看数据库数据可发现已经将上海更改为了郑州,说明
我们的修改操作已经成功。
删除数据
删除数据后,也需要执行commit()来进行保存
import pymysql
# 连接数据库
count = pymysql.connect(
host = 'localhost', # 数据库地址
port = '3306', # 数据库端口号
user = 'root', # 数据库账号
password = '821006052', # 数据库密码
db = 'test', # 数据库表名
charset = 'gbk' # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'Delete from where city="郑州"'
a = db.execute(sql)
count.commit()
通过执行后,查看数据库结果,可发现已经将郑州这条数据删除了。
新增数据
import pymysql
# 连接数据库
count = pymysql.connect(
host = 'localhost', # 数据库地址
port = '3306', # 数据库端口号
user = 'root', # 数据库账号
password = '821006052', # 数据库密码
db = 'test', # 数据库表名
charset = 'gbk' # 中文乱码
)
# 完成mysql数据库实例化
db = count.cursor()
# sql语句
sql = 'INSERT INTO wheather VALUES("上海", "331eab8f3481f37868378fcdc76cb7cd" , 1)'
a = db.execute(sql)
count.commit()
执行完成后,可以看到我们的数据库中已经新增了一条数据。