为了账号安全,请及时绑定邮箱和手机立即绑定

如何将值插入到 SQLAlchemy TIMESTAMP 列中

如何将值插入到 SQLAlchemy TIMESTAMP 列中

慕斯709654 2021-12-26 10:13:56
我正在尝试使用 SQLAlchemy 为时间戳列设置值,但我遇到以下错误:column "timestamp" is of type timestamp without time zone but expression is of type numeric我的表如下所示:class SomeTable(db.Model):     timestamp = Column(TIMESTAMP)插入尝试看起来像这样:SomeTable(timestamp=time.time())当我使用 datetime.now() 而不是 time.time() 时,记录被插入到表中,但是当我从数据库中选择它时,它具有以下格式:2019-04-02 11:44:24.801046所以看起来 TIMESTAMP 字段不存储时间戳格式。这是常规的 postgres 行为吗?或者我错过了什么?
查看完整描述

1 回答

?
慕勒3428872

TA贡献1848条经验 获得超6个赞

我认为这很好,因为接下来是正确的:

Column('timestamp', TIMESTAMP(timezone=False), nullable=False, default=datetime.now())

所以默认情况下你在datetime.now()那里,它是关于演示的

datetime.now() 会给你 '2019-04-02 14:21:33.715782

datetime.now().isoformat() 会给你 '2019-04-02T14:31:09.071147'

检查它:http : //www.sqlfiddle.com/#!15/d0c6a/8

如果您取消注释第三个插入,您将获得与您的完全相同的异常


查看完整回答
反对 回复 2021-12-26
  • 1 回答
  • 0 关注
  • 239 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信