pypyodbc查询中的字符串无法识别

时间:2020-04-17 22:03:27

标签: python variables parameters odbc

我最近出于某些原因决定将我的一些脚本从jupyter笔记本迁移到普通的旧python脚本(.py)。在jupyter中,一切正常工作,但是相同的代码在SQL中什么也没做。我知道该过程是正确的,因为如果直接在服务器上运行它,它就能解决问题。

我的代码是:

query = 'EXEC [dbo].[kpi_init] '+kpi+';'
cursor.execute(query)

我试图像这样添加引号,但没有成功:

query = 'EXEC [dbo].[kpi_init] \''+kpi+'\';'

我尝试使用参数化查询,但没有成功:

query = 'EXEC [dbo].[kpi_init] ?;'
cursor.execute(query, [kpi])
值得一提的是,kpi是一个简单的变量,包含诸如A00或X23之类的东西,并且在那里,因为我可以将其打印出来并用于触发外部函数。这只是我的SQL代码不起作用。我错过了什么吗?

谢谢

1 个答案:

答案 0 :(得分:1)

尝试这个:

query = f"EXEC [dbo].[kpi_init] '{kpi}'"
cursor.execute(query)
相关问题