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
    原文地址: https://www.cnblogs.com/kaishirenshi/p/7773227.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞