用 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
请您参考如下方法:
警告是
警告:截断不正确的 DOUBLE 值:'1970-01-04 00:00:00'
意味着它会截断您的数据。请检查您要存储时间对象的字段类型。 它表示您正在尝试使用日期时间值存储 DOUBLE 值。
如果这不能解决问题,那么只需提供一些代码示例,以便我们了解您要做什么。
