目前,如果我有一个类型为 DATETIME(6)
的列,并且通过普通 SELECT datecolumn FROM tablename
使用 PHP 提取该值,显然始终作为匹配以下正则表达式的字符串返回
/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}\.\d+$/
结果用零填充。
这种精确格式是否得到保证并记录在某处?或者将代码迁移到配置不同的服务器是否可能会产生一个不填充前导零或使用斜杠而不是连字符或其他一些差异的字符串?
最佳答案
根据关于Date, DateTime and Timestamp DataTypes的MySQL声明
您应该始终期待这种格式:yyyy-mm-dd hh:mm:ss
和
The DATETIME type is used for values that contain both date and time parts. MySQL retrieves and displays DATETIME values in 'YYYY-MM-DD HH:MM:SS' format. The supported range is '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.
还有:
Invalid DATE, DATETIME, or TIMESTAMP values are converted to the “zero” value of the appropriate type ('0000-00-00' or '0000-00-00 00:00:00').
关于php - MySQL 是否始终保证以这种格式将 DATETIME 转换为 STRING?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39416350/