mysql命令无法正常工作

时间:2014-10-15 04:52:38

标签: php mysql sql

我有一张类似这样的表

id    nam        start_t    end_t
51    something  2014-10-01 0000-00-00

我想将end_t更改为“2014-9-31”,所以我使用了这个命令

"UPDATE `sometable` SET `end_t`="2014-9-31" WHERE id=51 limit 1"

但是,上面的代码只是将end_t设置为0000-00-00 ......

这些查询可以正常工作

"UPDATE `sometable` SET `end_t`="2014-10-31" WHERE id=51 limit 1"
"UPDATE `sometable` SET `end_t`="2014-8-31" WHERE id=51 limit 1"
编辑:哇......我觉得很蠢〜.~非常感谢你的反馈

2 个答案:

答案 0 :(得分:3)

来吧,九月没有31天

="2014-9-31"    // 30 max :)

由于这是一个日期字段,它知道哪个日期有效,哪个日期无效。这就是为什么当您向其发送无效日期时,它会将值设置为默认值而不是该无效日期。

答案 1 :(得分:0)

因为9月没有31天

像这样改变

"UPDATE sometable SET end_t="2014-9-30" WHERE id=51 limit 1"