我是 Python-SQL 连接世界的新手。我的目标是通过我的 python 脚本执行长 SQL 查询,以 pandas DataFrame 格式从 SQL 检索数据。
我的大多数 SQL 查询都很长,在最后一个临时表的最终 SELECT 语句之前有多个临时临时表。当我在 Python 中运行这样一个整体查询时,我收到一条错误消息 -
“pandas.io.sql.DatabaseError:sql 执行失败”
尽管它们在 MS SQL Management Studio 中运行得非常好
我怀疑这是由于临时临时表造成的,因为如果我将长查询分成两部分(SELECT第一部分中的最后一个部分之前的所有内容和SELECT第二部分中的最后一个部分之前的所有内容),这两个部分按顺序运行良好
有人可以指导我为什么会这样,或者使用临时表/视图运行长查询并在 pandas DataFrame 中检索结果的最佳方法是什么?
这是我的示例 Python 代码,理想情况下应该采用一个好的名称作为输入并运行 SQL 以检索数据框中的结果,但是在使用临时表进行查询的情况下它会失败
import pyodbc as db
import pandas as pd
filename = 'file.sql'
username = 'XXXX'
password = 'YYYYY'
driver= '{ODBC Driver 13 for SQL Server}'
database = 'DB'
server = 'local'
conn = db.connect('DRIVER='+driver+'; PORT=1433; SERVER='+server+';
PORT=1443; DATABASE='+database+'; UID='+username+'; …Run Code Online (Sandbox Code Playgroud)