我有以下查询工作的罚款无视唯一关键:一旦切换INSERT到更换DATE_SUB()结果无效
insert_post = ("""INSERT IGNORE INTO posts
SET internal = %s,
schedule_date = DATE_SUB(%s, INTERVAL 2 HOUR)
""")
我切换查询REPLACE
或ON DUPLICATE KEY UPDATE
我收到以下错误:
mysql.connector.errors.DataError: 1292 (22007): Truncated incorrect datetime value: '2017-08-19T12:45:00-0500'
我认为传入的值格式与MySQL datetime列不兼容,但它似乎不是我的初始INSERT
上的问题。
关于我失踪的任何想法?
下面是一个SQL小提琴,但小组不会运行DDL/DML所以不要指望比模式更:http://sqlfiddle.com/#!9/656a3/2
编辑:这里的工作SQLfiddle显示复制错误:http://sqlfiddle.com/#!9/c13f45/1
您是否尝试在插入前将您的查询作为select语句运行?我这样做,当我调试,有时它的超级有助于确定为什么失败。 – ttallierchio
@ttallierchio SELECT和DATE_SUB格式可以正常工作。 – Jared
在左侧写上您的DML:http://sqlfiddle.com/#!9/c13f45/1或使用rexester:http://rextester.com/TENRB4721 –