SQL查询在控制台中工作,但在python中不起作用

时间:2012-07-28 23:23:02

标签: python mysql sql

嗨我有一个SQL查询的问题它在控制台工作完美,但当我实现到python它似乎工作完美没有错误,但当我检查数据库它没有工作,但与控制台它确实工作相同没有错误,当我检查db数据是否存在...我使用的完全相同的查询。

有什么想法吗?

UPDATE ex SET fbsiteurl = stringvarible, fbsitesource = '' WHERE id = 23123;

在python中:

 cur = con.cursor()
 sqlquery = "UPDATE ex SET fbsiteurl = '"+somevarible+"', fbsitesource =        '"+somevarible+"' WHERE id = %d;" % recordid                                
 print sqlquery
 cur.execute(sqlquery)

查询显示打印没有问题,如果我复制打印并将其粘贴到一个mysql控制台,它每次都很完美,只是来python它的行为就像它的工作,但dosnt真的0_o

3 个答案:

答案 0 :(得分:3)

connection.autocommit(),或者你需要做connection.commit()

答案 1 :(得分:0)

在那里:)你需要关闭光标

答案 2 :(得分:0)

这个小问题一直持续到今天。只是为了澄清,我不得不使用上述两个答案,如:

        cur = self.db.cursor()
        try:
            cur.execute(sqlcommand)
            self.db.commit()
            res = cur.fetchall()
        except res is not None:
            print(res)
        finally:
            cur.close()