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()

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

检测下隔离级别,可能出现脏读,
然后自增id是数据库自己维护,你只要insert不管有没有commit他都会自己更新,哪怕你insert失败了,他也会更新