Heim  >  Artikel  >  Backend-Entwicklung  >  MySQL时间字段数据类型?

MySQL时间字段数据类型?

WBOY
WBOYOriginal
2016-06-06 20:27:421249Durchsuche

之前在项目中数据表的时间字段用的都是 int(10)
今天早上看书时,书上说建议使用 TIMESTAMP 类型,大家在项目都是怎么存储的?

回复内容:

之前在项目中数据表的时间字段用的都是 int(10)
今天早上看书时,书上说建议使用 TIMESTAMP 类型,大家在项目都是怎么存储的?

datetime 和 int 应该都精确不到毫秒上去,timestamp 和 bigint 可以

int占用4个字节,而4个字节就是32位,不够32位前面补0,所以MySQL中unsigned int(10)最大能存储的整数是2^32-1,即4294967295.echo date('Y-m-d H:i:s', 4294967295); 返回 2106-02-07 14:28:15 ,也就是int(10)字段无法存储这个时间后的时间戳.个人觉得可以用8个字节的bigint,保证能够存储地球有生之年的时间戳.

我们用的 datetime, 缺点是没有毫秒, 需要记录毫秒的用的字符型存的

个人更喜欢int存时间戳....具体孰好孰坏还请楼下的盆友来回答...

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn