这在mysql 5.6中运行得很好,但是这样做可以吗?它是未来的证明吗?
create table test (`test_column` varchar(100)); insert into test values (now());
cetgtptt1#
尽管我们不能总是预测未来,但mysql总是,而且很可能总是使用iso-8601日期格式,这是非常明确的。在字符串列中存储日期值是一件非常奇怪的事情,特别是如果您希望它是日期或日期时间。使用适当的列类型 DATE 或者 DATETIME 作为原生表示提供了很多好处:更快的索引、更轻的存储需求、自动验证,以及与mysql内置的各种日期函数的兼容性。我想不出一个好的理由把约会说成是武断的 VARCHAR mysql中的列。
DATE
DATETIME
VARCHAR
1条答案
按热度按时间cetgtptt1#
尽管我们不能总是预测未来,但mysql总是,而且很可能总是使用iso-8601日期格式,这是非常明确的。
在字符串列中存储日期值是一件非常奇怪的事情,特别是如果您希望它是日期或日期时间。使用适当的列类型
DATE
或者DATETIME
作为原生表示提供了很多好处:更快的索引、更轻的存储需求、自动验证,以及与mysql内置的各种日期函数的兼容性。我想不出一个好的理由把约会说成是武断的
VARCHAR
mysql中的列。