我有一个存储论坛消息的表。它有一个名为date_modified的列,它非常明显。每当用户修改帖子时,该列都会更新为该行的当前时间。如果邮件从未被修改过,则它不应该有值。现在,每当我尝试修改表时,即使表修改与该列完全无关,我也会收到错误char **dyanmic;
dyanmic = malloc(sizeof(char *));
*dyanmic = malloc(2 * sizeof(char));
stack->dynamicArray = dyanmic;
。为什么会发生这种情况?如何解决?
这是我的表:
Incorrect datetime value: '0000-00-00 00:00:00' for column 'date_modified' at row 1
答案 0 :(得分:0)
使其为NULL,零日期和NULL日期不一样。
答案 1 :(得分:0)
MySQL文档说
服务器要求月和日值有效,而不仅仅是 分别在1到12和1到31的范围内。有严格的模式 已禁用,无效日期,例如' 2004-04-31'转换为 ' 0000-00-00'并生成警告。启用严格模式后, 无效日期会产生错误。
所以也许你试图用不正确的tymestamp格式插入值
答案 2 :(得分:0)
发生在我身上。我在expiry_date中找到了一个值为0000-00-00的行,该行是datetime列。我删除了这一行,终于可以更改表格了。