【发布时间】:2018-01-25 08:23:43
【问题描述】:
我正在学习 python,我正在尝试将参数作为 WHERE 子句的一部分传递。我正在使用熊猫和 pyodbc。这是我到目前为止所尝试的。我首先从 pandas 数据框中获取 c 列的数据,并将其转换为一个名为 df_col 的列表,其中包含大约 100 个数值
df_col=df['data_for_colc'].tolist()
然后,我执行 SQL 语句:
execu = mycursor.execute(
"""
Select
columnA
,columnb
,columnc
where
columnc in (?)
""",df_col)
rows = mycursor.fetchall()
print(rows)
我能够从 SQL 服务器连接和下载数据,但我无法传递参数。我只需要能够根据我用 100 个值创建的列表下载这 100 行,但我收到一个错误:('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect ',' 附近的语法。(102) (SQLExecDirectW)")
任何帮助将不胜感激。谢谢
【问题讨论】:
-
您的 SELECT 语句没有 FROM 子句。
标签: python parameters pyodbc