Python操作MySQL

发布时间:2022-03-11 09:44:58 人气:108 作者:多测师

  在做python自动化时,结果断言很重要,相较数据固定校验(数据维护比较复杂),我们更期望实现动态的校验数据。

  数据存储在数据库或者redis中,因此学会python操作数据库和redis势在必行。

  安装和使用:

  安装pymysql

  pip install pymysql

  导入pymysql

  import pymysql

  数据库操作

  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()为提交事务:

Python操作MySQL

  因为pymysql 模块默认是启用事务的。如果不提交,相当于没有执行。

  一般在增删改sql执行后,需要提交事务。

  cursor.executemany批量操作数据。

  适用于增删改。

  执行sql时,如果发生异常,可进行异常处理-回滚。

  try:

  result=cursor.executemany(sql_add,data)

  conn.commit()

  except Exception as e:

  conn.rollback()

  示例

  1. 增加数据

  sql_add= 'insert into user(name,pwd) VALUES(%s,%s);'

  # 执行SQL语句

  result=cursor.execute(sql_add,['admin','admin123'])

  # 提交事务

  conn.commit()

  2. 删除数据

  sql_del='delete from user where name='admin';

  #执行SQL语句

  result=cursor.execute(sql_del,['admin','admin123'])

  conn.commit()

  3. 修改数据

  sql_update=' update user set name=%s where name=%s';

  result=cursor.execute(sql_update,['admin','admin123'])

  conn.commit()

  4. 查询数据

  # 定义要执行的SQL语句

  sql = 'select * from user where name=%s and pwd=%s;'

  # 执行SQL语句

  result=cursor.execute(sql,['admin','admin123'])

  #获取一个

  print(cursor.fetchone())

  #获取多个,默认为1

  print(cursor.fetchmany(2))

  #获取所有

  print(cursor.fetchall())

  以上内容为大家介绍了Python操作MySQL,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/

返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线