【发布时间】:2012-02-07 18:39:25
【问题描述】:
用 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 中获取更新时间,我想在数据库中完成此操作,这意味着我更喜欢 func.now():
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
【问题讨论】:
-
如果您找到了解决方案,则接受答案以关闭问题。请执行此操作以完成系统的工作流程。
标签: python sqlalchemy func timedelta