我一直在尝试使用以下SQL语句更新datetime列:
UPDATE HistoricData SET RecordDate=DATETIME(RecordDate,'60 minutes') WHERE DataStreamID=1 AND TimeFrameID=5
但是,我不断收到以下错误消息:
NOT NULL Constraint Failed: HistoricData.RecordDate
如果您可以建议进行适当的更改以使其正常工作,我将非常感激。
我将尝试附加示例架构和数据:
答案 0 :(得分:1)
在检查了DML之后,我唯一剩下的就是表中的日期时间格式。我尝试像您那样更新这样的值,然后猜测会返回NULL:http://sqlfiddle.com/#!7/f4651/10为什么?因为您的字符串(符号)不是有效的ISO-8601字符串。在更新(http://sqlfiddle.com/#!7/f4651/11)之前,您可能需要简单地将点替换为破折号。