假设我想使用Pyodbc
执行以下SQL语句Select col1 from Example_Table
该列最初是未知的。所以我试图将列名作为参数发送到SQL语句中。所以我尝试运行以下语句。
Cursor.execute("Select ? from Example_Table",("col1",))
但这就是这样的东西
[('col1',),('col1',),('col1',).....]
每当我传递一个字符串作为参数时,它会在查询时以单引号结束(这就是我认为正在发生的事情)。我知道使用%s
代替
?
会给出我想要的结果,但我不能将%s
用于我的目的。还有其他方法吗?
答案 0 :(得分:0)
你总是可以在python中连接相同的类型。您可以在查询字符串中连接变量,如下所示:
Cursor.execute("Select "+ yourColumnVariable +" from Example_Table")