mysql中的int与timestamp

int 是 「未有光环的timestamp」。

Mysql中的Datetime和Timestamp比较,datetimetimestamp

mysql中用来表示时间的三种档期的顺序date, datetime, timestamp (假如算上int的话,三种卡塔尔 相比比较容易于混淆,上面就比较一下那三系列型的争论

相同点

都得以用来表示时间
都呈字符串呈现

不同点

1.一概而论,date只象征'YYYY-MM-DD'格局的日子,datetime表示'YYYY-MM-DD HH:mm:ss'情势的日期加时间,timestamp与datetime显示情势相仿。
2.date和datetime可代表的岁月范围为'1000-01-01'到'9999-12-31',timestamp由于受三十个人int型的节制,能表示'一九六六-01-01 00:00:01'到'2038-01-19 03:14:07'的UTC时间。
3.mysql在蕴藏timestamp类型时会将时刻转为UTC时间,然后读取的时候再恢复成当下时区。 假如你存款和储蓄了一个timestamp类型的值之后,改革了mysql的时区,当你再读取这么些值时就能够拿走贰个谬误的时刻。而这种意况在date和datetime中不会爆发。
4.timestamp类型提供了自动更新的成效,你只需求将它的暗中同意值设置为CUXC60RENT_TIMESTAMP。
5.除了date是保留到天,datetime和timestamp都封存到秒,而忽轻微秒。

时光格式

mysql提供了生机勃勃种相比宽松的岁月字符串格式用于增加和删除改查。参谋iso时间格式,通常习贯于写成'贰零壹叁-06-05 16:34:18'。不过你也足以简写成'13-6-5',不过如此便于变成混淆,比方mysql也会把'13:6:5'也作为年月日拍卖,而当'13:16:5'这种方式,则被mysql感觉是不科学的格式,会交到多少个告诫,然后存入数据库的值是'0000-00-00 00:00:00'。

手册中还特意提到了生龙活虎种情况,就是当场的值是0~69时,mysql认为是2000~2069,而70~99时则认为是一九六九~1996。笔者以为是意气风发种多此一举了。

简单来讲,以不变应万变,使用'YYYY-MM-DD HH:mm:ss'格式总是不会错的。

mysql中用于表示时间的三类别型date, datetime, timestamp (若是算上int的话,各类卡塔尔 较易模糊,下...

这些小编是说不清楚的。之所以列了那一个标题,是因为微微零星的火舌,自感觉这么些火花比较根本,不舍得遗弃。

int未有timpstamp的那贰个光环。范围广一点,专门的职业化功用弱一点。对于非国际化需求,用int更为便利一点。所以,小编所接触到的数据库,非常多时间是用int的。

百度上stamp的翻译是:

有关int与timestamp的各个定义,在任何质感上也能够赶快搜出来,讲得很详细。未来本人单独把他们俩拎出来,从某三个宗旨切开相比一下。

作者更赞成于「标记,印记」这样的知晓。给某一件事,某些东西,贴多个标签。这几个标签与时光有涉及。主体是标签,从那一个含义上知道,范围大了。