cursor.execute("INSERT INTO pattent VALUES ('%s','%s','%s','%s','%s','%s')" %(PattentNumber,PattentName,PattentInventors,PattentCompany,PattentFiledtime,PattentAbstract))
sqlite3.OperationalError: near "s": syntax error
以上是我的INSERT句子。
它适用于其他情况,但它说sqlite3.OperationalError: near "s": syntax error
我使用Python,所有VALUES都是文本。 狼在哪儿?
谢谢!
答案 0 :(得分:4)
你应该不使用字符串格式,而是使用SQL参数:
cursor.execute("INSERT INTO pattent VALUES (?, ?, ?, ?, ?, ?)",
(PattentNumber, PattentName, PattentInventors, PattentCompany, PattentFiledtime, PattentAbstract))
SQL参数确保您的值正确转义,防止SQL注入攻击并正确处理不同类型。