MySQLdb UPDATE挂起

时间:2013-01-29 11:47:08

标签: python mysql mysql-python

我正在使用MySQL的MySQLdb模块进行一些简单的查询。当我执行某个更新时,它会挂起一段时间,最后会出现此错误:

  

操作错误(超过1205'锁定等待超时尝试重新启动   交易')

我正在使用的代码如下:

def unselectAll():
    try:
        db = MySQLdb.connect(host='localhost', user='user', passwd='', db='mydatabase')
        cursor = db.cursor()
        cursor.execute('UPDATE MYTABLE SET Selected=0')
    except MySQLdb.Error, e:
        print 'ERROR ' + e.args[0] + ': ' + e.args[1]

如果我尝试在控制台中使用该查询,则效果很好。此外,如果在没有db参数的情况下连接并且在查询中使用mydatabase.MYTABLE也不起作用。

任何帮助?

1 个答案:

答案 0 :(得分:1)

这可能是因为UPDATE没有提交 - 您是否尝试autocommit=True进行连接?如在

db = MySQLdb.connect(host='localhost', user='user', passwd='', db='mydatabase', autocommit=True)

或者甚至

db.autocommit(True)

您创建了连接后。