【发布时间】:2025-12-03 10:45:01
【问题描述】:
我正在尝试使用 python 从 SQL Server 数据库中检索数据,但系统崩溃并显示以下错误:
ProgrammingError: ('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]关键字'where'附近的语法不正确。(156) (SQLExecDirectW); [42000] [Microsoft][ ODBC SQL Server 驱动程序][SQL Server]无法准备语句。(8180)")
代码:
import pandas as pd
import streamlit as st
search_term=st.text_input("Enter Search Term")
cursor.execute("select * from testDB.dbo.t1 where ID = ? OR where first =?",search_term,search_term)
dd = cursor.fetchall()
print(dd)
【问题讨论】:
-
where ID = ? OR where first =?你多了一个“where” -
但我的查询必须搜索列名“ID”或列名“first”
-
一个查询范围只有一个
WHERE,@khaledM_dev。查看[示例文档(docs.microsoft.com/en-us/sql/t-sql/queries/…),您会立即看到问题。
标签: python sql-server pyodbc