【发布时间】:2020-11-04 04:09:51
【问题描述】:
我在SQL Server 中定义了一个列ldate,数据类型为datetime,并接受null 值。我正在尝试使用 python 和pyodbc 从本地机器发送数据。我有20-01-2015 之类的string 格式的日期。当我尝试发送数据时,它会引发错误:
pyodbc.DataError: ('22007', '[22007] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]从字符串转换日期和/或时间时转换失败。(241) (SQLExecDirectW) ')
所以我将 string 转换为 datetime 格式使用
datetime.datetime.strptime('20-01-2015', '%Y-%m-%d')
这是datetime.datetime 类型。当我插入这个值时,它会抛出错误
pyodbc.ProgrammingError: ('42000', '[42000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]找不到列“datetime”或用户定义的函数或聚合“datetime.datetime ",或者名称不明确。(4121) (SQLExecDirectW)')`
我很震惊 - 有什么帮助吗?
【问题讨论】:
-
向我们展示您的代码和完整的错误回溯!
标签: python sql sql-server datetime casting