输入过去和将来的日期是否需要ALLOW_INVALID_DATES?

时间:2018-07-20 03:50:23

标签: mysql database

我正在查看MySQL文档(herehere),想知道是否有必要ALLOW_INVALID_DATES输入数据类型{{1}的过去和将来的日期}?

文档中有这句话:

  

ALLOW_INVALID_DATES

     

不对日期进行全面检查。仅检查月份是否在1到12的范围内,以及日期在1到31的范围内。这对于在三个不同字段中获取年,月和日并准确存储用户内容的Web应用程序可能很有用。已插入,没有日期验证。此模式适用于DATE和DATETIME列。它不适用于始终需要有效日期的TIMESTAMP列。

     

在启用ALLOW_INVALID_DATES的情况下,服务器要求合法的月和日值,而不仅仅是分别在1到12和1到31的范围内。禁用严格模式后,无效日期(例如“ 2004-04-31”)将转换为“ 0000-00-00”并生成警告。启用严格模式后,无效日期会产生错误。要允许这样的日期,请启用ALLOW_INVALID_DATES。

因此,如果DATE被禁用,不是当前日期(过去和将来的日期)的日期会被转换为'0000-00-00'吗?

还是意味着填充的月份和日期(ALLOW_INVALID_DATES2018-01-12等)将被转换?

还是仅使用完全无效的日期,例如2018-11-012018-13-01

0 个答案:

没有答案