SQLAlchemy 无法将时间戳插入 MSSQL



sqlalchemy.exc.IntegrityError: (pyodbc.完整性错误)("23000", '[23000] [免费TDS][SQL Server]无法将显式值插入到 时间戳列。将 INSERT 与列列表一起使用以排除 时间戳列,或在时间戳列中插入 D EFAULT。 (273) (SQLExecDirectW)') [SQL: 'INSERT INTO task_events (task_id, event_name, ts) OUTP UT inserted.id 值 (?, ?, ?)'][参数: (54, 'RUNNING', datetime.datetime(2017, 1, 16, 18, 5, 55, 595066))]

该错误似乎与此有关:

You can't insert explicit values into a timestamp column. Timestamp values are unique binary numbers that are automatically generated.

SQLAlchemy不知道这一点吗?是否有一些键\设置可以让 SQLAlchemy 知道现在插入时间戳?

这似乎是处理SQLAlchemy的luigi代码。

附言。这里的问题是 luigi 正在使用 SQLAlchemy,我不想修改 luigi 的代码,但如果你能在 luigi 方面提出一个简单的解决方案,那也会起作用。

所以,多亏了这些优秀的绅士@LaugingVergil和@HaleemurAli我刚刚决定在我的 dockerfile 中添加另一个sed黑客......

我只是在CMD /usr/bin/luigid之前做RUN sed -i 's/TIMESTAMP/DateTime/g' /usr/lib/python3.4/site-packages/luigi/db_task_history.py

最新更新