300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Mysql中bigint int mediumint smallint 和 tinyint的取值范围

Mysql中bigint int mediumint smallint 和 tinyint的取值范围

时间:2023-12-10 00:19:36

相关推荐

Mysql中bigint int mediumint smallint 和 tinyint的取值范围

Mysql中bigint、int、mediumint、smallint 和 tinyint的取值范围

引言

社区这边的业务就遇到过这个坑,由于是用的开源框架,很多表id的字段用的mediumint类型,随着业务增长,数据量暴增,结果有一天超过id的上限,结果insert db就报错了,影响部分业务功能。

整型数值

整型的每一种都分有无符号(unsigned)和有符号(signed)两种类型,在默认情况下声明的整型变量都是有符号的类型,如果需声明无符号类型的话就需要在类型前加上unsigned。

bigint

从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字),无符号的范围是0到18446744073709551615,共 8 个字节。

int

一个正常大小整数。有符号的范围是-2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字),无符号的范围是0到4294967295。共 4 个字节。 int 的 SQL-92 同义词为 integer。

mediumint

一个中等大小整数,有符号的范围是-8388608到8388607,无符号的范围是0到16777215, [0,2^24-1]。 大小为3个字节。

smallint

一个小整数。有符号的范围是-2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据,无符号的范围是0到65535。大小为 2 个字节。MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。

tinyint

有符号的范围是-128 - 127, 无符号的范围是 从 0 到 255 的整型数据。大小为 1 字节。[0,2^8-1]

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。