在我的MySQL数据库表中,我有一列用于datetime字段。我正在使用jQuery datetime选择器插入日期和时间。例如,来自文本框的值将被插入数据库中:
2018-09-01 00:00:00
日期还可以。但是我想知道时间格式中的这些零是什么意思?这次可以吗?如果我将在PHP中进行基于日期时间的计算,那么它将使计算错误吗?
答案 0 :(得分:2)
DATETIME类型用于包含日期和时间部分的值。 MySQL检索并以'YYYY-MM-DD HH:MM:SS'格式显示DATETIME值。支持的范围是“ 1000-01-01 00:00:00”到“ 9999-12-31 23:59:59”。
因此,MySQL中存储的时间为24小时格式。因此,基本上 00:00:00 代表午夜(12:00:00 AM)
此外,MySQL还允许存储微秒。再次引用documentation:
DATETIME或TIMESTAMP值可以包含尾随的小数秒部分,精度最高为微秒(6位数)。特别是,存储在DATETIME或TIMESTAMP列中的值中的任何小数部分都被存储而不是被丢弃。包括小数部分在内,这些值的格式为'YYYY-MM-DD HH:MM:SS [.fraction]',DATETIME值的范围为'1000-01-01 00:00:00.000000'至'9999 -12-31 23:59:59.999999”,并且TIMESTAMP值的范围为“ 1970-01-01 00:00:01.000000”至“ 2038-01-19 03:14:07.999999”。小数部分应始终与其余时间用小数点分隔;没有其他小数秒定界符被识别。