SQLAlchemy 无法将时间戳插入 MSSQL
SQLAlchemy fails to insert timestamp into MSSQL
sqlalchemy.exc.IntegrityError: (pyodbc.IntegrityError) ('23000',
'[23000] [FreeTDS][SQL Server]Cannot insert an explicit value into a
timestamp column. Use INSERT with a column list to exclude the
timestamp column, or insert a D EFAULT into the timestamp column.
(273) (SQLExecDirectW)') [SQL: 'INSERT INTO task_events (task_id,
event_name, ts) OUTP UT inserted.id VALUES (?, ?, ?)'] [parameters:
(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 不知道吗?是否有一些 key\setting 让 SQLAlchemy 知道现在插入 timestamps?
This 好像是处理SQLAlchemy的luigi代码。
ps。这里的问题是 luigi 使用的是 SQLAlchemy,我不想修改 luigi 的代码,但是如果你能在 luigi 方面提出一个简单的解决方案,那也可以。
所以,多亏了@LaugingVergil 和@HaleemurAli 这些优秀的绅士,我刚刚决定向我的 dockerfile 添加另一个 sed
hack...
我只是在 CMD /usr/bin/luigid
之前 RUN sed -i 's/TIMESTAMP/DateTime/g' /usr/lib/python3.4/site-packages/luigi/db_task_history.py
sqlalchemy.exc.IntegrityError: (pyodbc.IntegrityError) ('23000', '[23000] [FreeTDS][SQL Server]Cannot insert an explicit value into a timestamp column. Use INSERT with a column list to exclude the timestamp column, or insert a D EFAULT into the timestamp column. (273) (SQLExecDirectW)') [SQL: 'INSERT INTO task_events (task_id, event_name, ts) OUTP UT inserted.id VALUES (?, ?, ?)'] [parameters: (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 不知道吗?是否有一些 key\setting 让 SQLAlchemy 知道现在插入 timestamps?
This 好像是处理SQLAlchemy的luigi代码。
ps。这里的问题是 luigi 使用的是 SQLAlchemy,我不想修改 luigi 的代码,但是如果你能在 luigi 方面提出一个简单的解决方案,那也可以。
所以,多亏了@LaugingVergil 和@HaleemurAli 这些优秀的绅士,我刚刚决定向我的 dockerfile 添加另一个 sed
hack...
我只是在 CMD /usr/bin/luigid
RUN sed -i 's/TIMESTAMP/DateTime/g' /usr/lib/python3.4/site-packages/luigi/db_task_history.py