SQLite Python中的变量替换

时间:2012-12-10 11:17:38

标签: python sqlite

我有以下Python代码,当我执行它时它会给我错误,错误说

  

sqlite3.OperationalError:接近“%”:语法错误

statement = "INSERT INTO %s (%s) VALUES " % (table,columns) + "(%s,%s,%s);"
cur.execute(statement, (index,fullpath,filename))

1 个答案:

答案 0 :(得分:2)

SQL参数由数据库处理,而不是由Python处理,因此语法不一定与Python相同。

在SQLite(以及大多数其他数据库)中,参数标有?

statement = "INSERT INTO %s (%s) VALUES (?,?,?);" % (table,columns)
cur.execute(statement, (index,fullpath,filename))