ホームページ > データベース > mysql チュートリアル > 细节决定成败-mysql中的时间存储(datetime,timestamp,int)

细节决定成败-mysql中的时间存储(datetime,timestamp,int)

WBOY
リリース: 2016-06-07 16:12:21
オリジナル
1132 人が閲覧しました

在mysql中存储时间,我们可以用datetime 式,timestamp式,也可以用int式。那么我们设计的时候该如何考虑呢? 首先,我觉得应该明白这几个式究竟是如何的,然后看看他们的区别,这样我们才能思考何时使用正确的式。 DATETIME式,默认是YYYY-MM-DD HH:MM:SS,

在mysql中存储时间,我们可以用datetime 格式,timestamp格式,也可以用int格式。那么我们设计的时候该如何考虑呢?

首先,我觉得应该明白这几个格式究竟是如何的,然后看看他们的区别,这样我们才能思考何时使用正确的格式。

DATETIME格式,默认是"YYYY-MM-DD HH:MM:SS",这19个字符表示的,从1000-01-01 00:00:00-9999-12-31 23:59:59 。

TIMESTAMP格式也是'YYYY-MM-DD HH:MM:SS'这样的,与DATETIME不同的地方是,它的年份取值范围是1970-2037。

INT 的格式就是整数的形式,它可以控制位数,一般我们设置成10位就可以了。

那么什么时候使用DATETIME呢,当要显示的格式比较固定,就是显示年月日,时分秒这样的格式的时候,就采用这个方式,timestamp虽然较datetime的范围小,但是一般我们认为他的范围也是足够大的了,此外它还可以设置为更新的时候,自动修改值,也就是说当我们修改数据库,比如插入或者更新的时候,这个字段当我们设置成

CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,时,它就会自动填入当前的时间。
ログイン後にコピー

那么何时使用int呢,本来int不应该是时间格式,但是我们经过大量的编程实践发现,我们平时在php编程中,经常需要格式化显示时间,比如只显示年月日,如果数据库中存入的是int类型的时间,那么我们可以直接使用php的内置函数date()来转换了,非常的方便,而且对于时间的比较也更加的容易,因为是int类型,可以直接比较大小就可以比较时间了。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート