当我尝试在python脚本中使用单个连接执行30多个查询时,执行了查询但是更改没有反映在数据库中,但是当我关闭并重新建立每10个查询的连接并执行查询似乎工作原因这是否发生但是当我尝试使用我的命令行执行相同的30多个查询时,这个问题并没有发生。为什么会这样 我们为什么要重新建立连接
这不起作用
import MySQLdb
con = MySQLdb.connect(hostname,user, password, dbname, port)
cur = con.cursor()
cur.execute(query1)
.
.
.
cur.execute(query50)
cur.execute('commit')
cur.close()
con.close()
这个工作
import MySQLdb
con = MySQLdb.connect(hostname,user, password, dbname, port)
cur = con.cursor()
cur.execute(query1)
.
.
cur.execute(query10)
cur.execute('commit')
cur.close()
con.close()
#reestablished connection
con = MySQLdb.connect(hostname,user, password, dbname, port)
cur = con.cursor()
cur.execute(query11)
.
.
cur.execute(query20)
cur.execute('commit')
cur.close()
con.close()
#reestablished connection
con = MySQLdb.connect(hostname,user, password, dbname, port)
cur = con.cursor()
cur.execute(query21)
.
.
cur.execute(query30)
cur.execute('commit')
cur.close()
con.close()