我尝试从google analytics api填写MS SQL服务器上的表格。我尝试使用字符串替换的方法:
INSERT INTO Reporting.analytics_temp (var1,var2,var3) VALUES ('%s','%s','%s')" %(var1,var2,var3))
只要变量中没有特殊字符或引号,这样就可以正常工作,但是当有一个代码时代码会中断(错误消息:"字符串后面的未闭合引号")。 / p>
在做了一些研究之后,我意识到我使用的方法不太好,实际上由于sql注入风险很危险,所以我非常渴望得到一个更好的功能方法。
我找到了各种方法,但它们似乎都不适用于MSSQL 例如this one看起来像:
cursor.execute("INSERT INTO table VALUES (%s, %s, %s)", (var1, var2, var3))
但是这会给出错误消息" SQL包含0个参数标记,但提供了3个参数"
这里的问题是我不能很好地理解字符串替换,或者MS SQL的代码略有不同?