在做自动化测试的过程中,有时候需要操作数据库,下面就用pymysql连接数据库,并实现简单的增删改查询功能
一、查询
目标:获取learn_activity表中name="测试"的id值
import pymysql
# 连接数据库,指定数据库的ip地址,账号、密码、端口号、要操作的数据库
conn = pymysql.connect(host='***.***.80.155', port=3307, user='root', passwd='*****', db='leawod_learn')
# 创建游标
cursor = conn.cursor()
# SQL查询语句
sql = "select * from learn_activity where name = '测试'"
try:
# 执行SQL语句
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
# print(results)
for i in results:
print(i)
id = i[0]
print("id值是:%s"%id)
except:
# 如果发生错误则回滚
conn.rollback()
# 关闭数据库连接
conn.close()
运行结果:
(237291614169858048, '测试', '/20190517/b93de77c-acb2-4286-8cdd-ab65e3a8874d.jpg', '<p><img src="/20190517/3ea80fc6-a68a-42c4-afb7-9041edaaa0d1.jpg""></p><p>测试</p>', 1, 1, '', '', 0, 105, 1, 16, datetime.datetime(2019, 5, 17, 19, 12, 9), datetime.datetime(2019, 6, 27, 16, 10, 6), 0)
id值是:237291614169858048
二、插入数据
目标:向student表中添加一条数据,id=1,first_name=李, last_name=四
import pymysql
# 连接数据库,指定数据库的ip地址,账号、密码、端口号、要操作的数据库
conn = pymysql.connect(host='192.168.**.***', port=3306, user='root', passwd='123456', db='employees')
# 创建游标
cursor = conn.cursor()
# SQL插入语句
sql = "insert into student values (1, '李', '四')"
try:
# 执行SQL语句
cursor.execute(sql)
#关闭游标,提交,关闭数据库连接
# 如果没有这些关闭操作,执行后在数据库中查看不到数据
cursor.close()
# 提交到数据库执行
conn.commit()
except:
# 如果发生错误则回滚
conn.rollback()
# 关闭数据库连接
conn.close()
执行结果:
三、修改数据
目标:把 id=1 的 first_name 由 “李” 改为 “王”