【发布时间】:2021-12-16 23:45:56
【问题描述】:
我正在使用 Jupyter Notebook。我正在使用 pyodbc 从 SQL Server 2018 获取数据,但是当我尝试执行此操作时,它给了我一个错误。如何解决?
import pyodbc
import datetime
conn = pyodbc.connect('Driver={SQL Server};'
'Server=DESKTOP-MBJNNJR;'
'Database=master;'
'Trusted_Connection=yes;')
cursor = conn.cursor()
cursor.execute("SELECT Employee_Name, Hire_Date FROM Employee WHERE Hire_Date BETWEEN [{%s}] AND [{%s}]");
hire_start = datetime.date(1999, 1, 1)
hire_end = datetime.date(1999, 12, 31)
cursor.execute(query, (hire_start, hire_end))
for (Employee_Name, Hire_Date) in cursor:
print("{}, {} was hired on {:%d %m %Y}".format(Employee_Name, Hire_Date))
cursor.close()
错误:
ProgrammingError: ('42S22', "[42S22] [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name '{%s}'. (207) (SQLExecDirectW); [42S22] [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name '{%s}'. (207)")
【问题讨论】:
标签: python sql sql-server pyodbc