Python操作MySQL
在做python自动化时,结果断言很重要,相较数据固定校验(数据维护比较复杂),我们更期望实现动态的校验数据。
数据存储在数据库或者redis中,因此学会python操作数据库和redis势在必行。
安装和使用:
安装pymysql
pipinstallpymysql
导入pymysql
importpymysql
数据库操作
1.首先,连接数据库
conn=pymysql.connect(host='host',user='user',password='password',database='database',charset='utf8')
2.获取游标对象
#得到一个可以执行SQL语句的光标对象,默认输出为元组,如果字典形式输出:cursor=conn.cursor(pymysql.cursors.DictCursor)
cursor=conn.cursor()
3.执行sql语句
result=cursor.execute(sql)
4.关闭光标对象
cursor.close()
5.关闭数据库连接
conn.close()
6.其他
conn.commit()为提交事务:
因为pymysql模块默认是启用事务的。如果不提交,相当于没有执行。
一般在增删改sql执行后,需要提交事务。
cursor.executemany批量操作数据。
适用于增删改。
执行sql时,如果发生异常,可进行异常处理-回滚。
try:
result=cursor.executemany(sql_add,data)
conn.commit()
exceptExceptionase:
conn.rollback()
示例
1.增加数据
sql_add='insertintouser(name,pwd)VALUES(%s,%s);'
#执行SQL语句
result=cursor.execute(sql_add,['admin','admin123'])
#提交事务
conn.commit()
2.删除数据
sql_del='deletefromuserwherename='admin';
#执行SQL语句
result=cursor.execute(sql_del,['admin','admin123'])
conn.commit()
3.修改数据
sql_update='updateusersetname=%swherename=%s';
result=cursor.execute(sql_update,['admin','admin123'])
conn.commit()
4.查询数据
#定义要执行的SQL语句
sql='select*fromuserwherename=%sandpwd=%s;'
#执行SQL语句
result=cursor.execute(sql,['admin','admin123'])
#获取一个
print(cursor.fetchone())
#获取多个,默认为1
print(cursor.fetchmany(2))
#获取所有
print(cursor.fetchall())
以上内容为大家介绍了Python操作MySQL,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。http://www.mobiletrain.org/

猜你喜欢LIKE
相关推荐HOT
更多>>
如何使用python3中的heapq模块?
如何使用python3中的heapq模块?本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。模块安装:pipinstallheapq模块函数:nlargest()nsm详情>>
2023-11-07 13:26:32
Pandas中创建Series方法有哪些?
Pandas中创建Series方法有哪些?在python的Pandas库中,作为其中一个数据结构的Series,虽然是一维的,但能够存储不同类型的数据,本文介绍Panda...详情>>
2023-11-07 13:16:21
Python名称空间规则
名称到对象的映射。命名空间是一个字典的实现,键为变量名,值是变量对应的值。各个命名空间是独立没有关系的,一个命名空间中不能有重名,但是...详情>>
2023-11-07 08:29:33
Python之列举常见的内置函数
abs()返回数字的绝对值map根据函数对指定序列做映射map()函数接收两个参数,一个是函数,一个是可迭代对象,map将传入的函数依次作用到序列的每...详情>>
2023-11-07 08:08:47热门推荐
python中getattr()是什么?
沸python中Faker库如何生成随机测试数据?
热如何使用python3中的heapq模块?
热Pandas中创建Series方法有哪些?
新python中xlwings是什么?
python中datetime的基本介绍
python中scipy.special模块如何使用?
python中SocketServer是什么?
python字符串需要注意的语法问题
python如何将相对路径转换为绝对路径?
python包初始化有什么好处?
pythonos模块有几种用法?
python如何实现哥德巴赫分解
pythondefaultdict在python中接收调用对象
技术干货






