python - 我使用 Python 进行的 SQL 查询中的错误是什么?
问题描述
我正在尝试使用 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
子句。应该只有一个where
子句,它可以有任意多个由逻辑运算符连接的条件:
cursor.execute("select * from testDB.dbo.t1 where ID = ? OR first =?", search_term, search_term)
推荐阅读
- read-the-docs - 是否可以为我的文档创建讨论页面?
- java - 无法将数据写入服务器端的多个 Firestore 项目
- url - Alfresco V5.2 - 如何在实时搜索 webscript 中获取当前页面 url
- reactjs - 将对 DOM 元素的引用传递给 React
- sql-server-2012 - 将假期天数添加到日期之间
- java - 从 gitlab 克隆存储库后,intellij 无法识别我的 java 文件
- encryption - 使用椭圆曲线密码术加密数据
- node.js - 以角度编辑一些 JSON 数据行
- google-chrome - 从电视中删除 Google chromecast 音量事件
- javascript - 如何从 javascript 中的数组中获取特定对象?