pyodbc和sql server,应用日期时间.日期截止日期列

2024-09-30 04:37:48 发布

您现在位置:Python中文网/ 问答频道 /正文

pyodbc处理得很好日期时间。日期时间包含DATETIME对象的。不需要特殊格式。
但它失败了日期时间.日期对象和日期列:[HY004] [FreeTDS][SQL Server]Invalid data type (0) (SQLBindParameter)

一种方法是插入日期时间.日期对象作为字符串,使用.isoformat()方法。在

但是:

d1 = dt.date.today()
d2 = dt.datetime.now()
print(isinstance(d1, dt.date))
print(isinstance(d1, dt.datetime))
print(isinstance(d2, dt.date))
print(isinstance(d2, dt.datetime))

退货

^{pr2}$

难道没有比这样的测试更好的方法吗?在

if isinstance(d1, dt.date) and not isinstance(d1, dt.datetime):
    d1 = d1.isoformat()

Tags: 对象方法datetimedate格式时间dtisinstance
1条回答
网友
1楼 · 发布于 2024-09-30 04:37:48

我可以在freetds0.91下重现你的问题,这是Ubuntu下apt install tdsodbc发布的版本。但是,我能够成功地使用datetime.date参数值填充日期列,使用

  • FreeTDS的最新稳定版本(当前为01.00.0080),或
  • Microsoft的“用于SQL Server的ODBC驱动程序13”

相关问题 更多 >

    热门问题