zoukankan      html  css  js  c++  java
  • 细节决定成败-mysql中的时间存储(datetime,timestamp,int)

    在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类型,可以直接比较大小就可以比较时间了。


  • 相关阅读:
    背包问题
    阶乘尾数0的个数
    欧拉筛找素数
    威佐夫博弈
    三角形面积
    deleted
    deleted
    deleted
    deleted
    deleted
  • 原文地址:https://www.cnblogs.com/itdreamfly/p/12871620.html
Copyright © 2011-2022 走看看