半岛铁盒子 2019-05-30 17:35 采纳率: 0%
浏览 1363

python操作mysql怎么开启事务

现在出了个状况: 10条数据, 我是陆续执行10遍insert方法,最后才提交数据的, 但是别人在我执行这几条数据插入语句的过程中, 会查到数据表有新增数据id, 但是看不到数据,因为我还没提交, 这时候就很尴尬了,所以想先开启事务, 这样对方查询的时候就查不到我正在插入且未提交的数据了, 那python中怎么开启事务呢?

下边这是连接数据库的代码, 那开启事务和提交事务的代码怎么写呢?

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost", "testuser", "test123", "TESTDB", charset='utf8' )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# 使用execute方法执行SQL语句
cursor.execute("SELECT VERSION()")

# 使用 fetchone() 方法获取一条数据
data = cursor.fetchone()

print "Database version : %s " % data

# 关闭数据库连接
db.close()
  • 写回答

2条回答

  • D720CJM 2019-05-31 01:48
    关注

    python当中的MySQLdb和pymysql库本身就包含了事务处理……
    commit()之后才生效啊
    未提交之前出现数据id?我一下糊涂了

    评论

报告相同问题?

悬赏问题

  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?