繁体   English   中英

如何将date(ymd)插入MySQL数据库?

[英]How to insert date(y-m-d) into MySQL database?

我在MySQL中有一个类型为date的字段。 当我尝试使用以下查询在此字段中使用PHP插入任何日期时,它将在该字段中存储0000-00-00。

例如:

UPDATE test SET dob=2000-09-20 WHERE id=3

只要引用日期即可。

UPDATE test SET dob='2000-09-20' WHERE id=3

在您的查询中... 2000-09-20 ...将被解释为数学表达式。 结果是一个数字1971。在日期时间字段中,一个数字将被零填充为6、8、12或14位数字,因此1971将变为001971。然后将该数字解释为YYMMDD格式,因此意味着“年00月19日71”,无效。 这样就存储了特殊值的0000-00-00

通常,您将使用'2000-09-20'作为要插入的值。 您的系统如何区分您拥有的值和整数(非日期)值1971,即从2000中减去9和20得到的值?

UPDATE test SET dob = '2000-09-20' WHERE id = 3

请参阅此处了解更多详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM