在python中使用mysql insert语句中的变量

时间:2014-05-18 09:52:29

标签: python mysql

这是唯一有效的代码

 def insert_q(self, txt, user_id):
    sql = "INSERT INTO question(id, text, date, user_id) VALUES(%d,%s,CURDATE(),%d)" % (55,txt,user_id)
    cursor = self.db.cursor()
    try:
        cursor.execute('INSERT INTO question(id, text, date, user_id) VALUES(40, "sdds", CURDATE() , 44)')
        self.db.commit()
        self.done = True
    except:
        self.db.rollback()
        self.done = False
    return self.done

当我以这种方式使用变量时:

sql = "INSERT INTO question(id, text, date, user_id) VALUES(%d,%s,CURDATE(),%d)" % (55,txt,user_id)

或:

sql = "INSERT INTO question(text, date, user_id) VALUES(%(txt)s,CURDATE(),%(user_id)d)" % (txt,user_id)

我得到相同的结果: 假 帮助它为什么不起作用

0 个答案:

没有答案