我正在学习 python,并且尝试将参数作为 WHERE 子句的一部分传递。我正在使用 pandas 和 pyodbc。这是我到目前为止所尝试过的。我首先从 pandas 数据框中获取 c 列的数据,并将其转换为名为 df_col 的列表,该列表包含大约 100 个数值
df_col=df['data_for_colc'].tolist()
Run Code Online (Sandbox Code Playgroud)
然后,我执行 SQL 语句:
execu = mycursor.execute(
"""
Select
columnA
,columnb
,columnc
where
columnc in (?)
""",df_col)
rows = mycursor.fetchall()
print(rows)
Run Code Online (Sandbox Code Playgroud)
我能够连接 SQL Server 并下载数据,但无法传递参数。我只需要能够根据我使用 100 个值创建的列表下载这 100 行,但出现错误:('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]不正确',' 附近的语法。(102) (SQLExecDirectW)")
任何帮助,将不胜感激。谢谢