MySQL的bigint类型

Posted 开始认识

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL的bigint类型相关的知识,希望对你有一定的参考价值。

bigint支持的数字的大小范围为:19位,存电话号码。有符号范围:-9223372036854775808 到 9223372036854775807

int支持的数字范围为:10位,有符号范围:-2147483648 到 2147483647   无符号范围:0-4294967295

mysql> create table c5(id bigint);
Query OK, 0 rows affected (0.04 sec)

mysql> insert into c5 values(23434);
Query OK, 1 row affected (0.01 sec)

mysql> insert into c5 values(44444444444444423434);
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> insert into c5 values(444444444444444444444444444444444444444444423434);
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> insert into c5 values(444444444444444444444444444444444444444444423434444444444444444444444444444);
Query OK, 1 row affected, 1 warning (0.00 sec)

插入一个大的数值并不报错,但实际存到表里面的数据就是19位数字支持的最大数字

mysql> select * from c5;
+---------------------+
| id |
+---------------------+
| 23434 |
| 9223372036854775807 |
| 9223372036854775807 |
| 9223372036854775807 |
+---------------------+
4 rows in set (0.00 sec)

mysql> select count(*) from c5;
+----------+
| count(*) |
+----------+
| 4 |
+----------+
1 row in set (0.00 sec)

mysql> select count(*) from c5\G
*************************** 1. row ***************************
count(*): 4
1 row in set (0.00 sec)

mysql> select * from c5\G
*************************** 1. row ***************************
id: 23434
*************************** 2. row ***************************
id: 9223372036854775807
*************************** 3. row ***************************
id: 9223372036854775807
*************************** 4. row ***************************
id: 9223372036854775807
4 rows in set (0.00 sec)

mysql>

































以上是关于MySQL的bigint类型的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 中的 CASE 强制列数据类型为 BIGINT 而不是 INT

MySQL 修改int类型为bigint SQL语句拼接

MySQL中数字类型的最大值 - int无法储存11位手机号码 - bigint, int, tinyint

MySQL中数字类型的最大值 - int无法储存11位手机号码 - bigint, int, tinyint

mysql 批量更新数据库主键为int,bigint 类型,字段为自增类型

MYSQL 字段类型之TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT