3

使用 Python 编码,我想插入在数据库端处理的时间,如下所示:

time = func.now()-datetime.timedelta(days=100)

或者

time = func.current_timestamp()-datetime.timedelta(days=100)

但不知何故它无法通过,看到警告:

sqlalchemy\engine\default.py:330: Warning: Truncated incorrect DOUBLE value: '1970-01-04 00:00:00'

有什么办法可以直截了当?谢谢。

=================================

我想更新表'Purchase'中的TIMESTAMP列'date_buy',而不是使用datetime.datetime.now()来获取python中的更新时间,我想在数据库中完成这项工作,这意味着我更喜欢功能。现在():

time = func.current_timestamp()-datetime.timedelta(days=100)
# time = datetime.datetime.now()-datetime.timedelta(days=100)
session.execute(update(Purchase).values(date_buy=time).where(Purchase.c.id == 11))

==================================

解决了。感谢 Bryan 和他的帖子: http ://groups.google.com/group/sqlalchemy/browse_thread/thread/a67d4f179e01b98a/ee688a0b8a999f52?hl=en&lnk=gst&q=date_add#ee688a0b8a999f52

4

1 回答 1

2

警告是

Warning: Truncated incorrect DOUBLE value: '1970-01-04 00:00:00'

意味着它会截断您的数据。请检查您要在其中存储时间对象的字段类型。它表示您正在尝试将 DOUBLE 值与日期时间值一起存储。

如果这不能解决问题,那么只需给出一些代码示例,以便我们了解您将要做什么。

于 2012-02-08T04:22:41.170 回答