在python中更新记录时出错

66bbxpm5  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(313)

我正在尝试用python做一个简单的更新。这是我尝试运行的代码:

mycursor = mydb.cursor()
 if(result<5):
        os.remove(destiny)
        print(result)
        print(fi[:-4])
        print(lastid)
        sql = "UPDATE googlesearch SET similarity=%s WHERE tweetid=%d and imageName=%s"
        value = (str(result),lastid,str(fi[:-4]))
        print(value)
        mycursor.execute(sql, value)
        mydb.commit()

正如你所看到的,这很容易。但是当我运行它时,我有一个错误:

ProgrammingError: Not all parameters were used in the SQL statement

打印值时,我有这样一句话:('2.82258064516129',2636,'dimg10')在navicat中使用这句话,一切都很完美。为什么,我有这个错误?。

gg0vcinb

gg0vcinb1#

语句参数位置由 %s ,不是 %d .
所以我想如果你改变

sql = "UPDATE googlesearch SET similarity=%s WHERE tweetid=%d and imageName=%s"
                                                            ^

sql = "UPDATE googlesearch SET similarity=%s WHERE tweetid=%s and imageName=%s"
                                                            ^

您将避免此错误。

相关问题