我有一张类似这样的表
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"
编辑:哇......我觉得很蠢〜.~非常感谢你的反馈
答案 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"