MySQL int(11) 和 int(3) 在数据库里存储一样的结果
来源:互联网 发布:淘宝卖家设置返利 编辑:程序博客网 时间:2024/06/01 09:12
总结,int(M) zerofill,加上zerofill后M才表现出有点点效果,比如 int(3) zerofill,你插入到数据库里的是10,则实际插入为010,也就是在前面补充加了一个0.如果int(3)和int(10)不加zerofill,则它们没有什么区别.M不是用来限制int个数的.int(M)的最大值和最小值与undesigned有关,最下面那副图有说明.
MySQL has a little know feature for numerical types known as zerofill. This feature effects the display size of numerical types. Unlike the string types the number inside the parentheses is not the storage size in characters for the type. For numerical types the type name itself determines storage size.Column Type Bytes On Disk Signed Storage Range Unsigned Storage Range
The confusion between types comes from the number inside parentheses for different types. The integer type it’s the padding size for zerofill. The following examples demonstrates zerofill. All of these tables store the same range of values since they are all integer type.
Zerofill with padding specified:
mysql> create table t (t int(3) zerofill);
Query OK, 0 rows affected (0.00 sec)
mysql> insert into t set t = 10;
Query OK, 1 row affected (0.00 sec)
mysql> select * from t;
+——+
| t |
+——+
| 010 |
+——+
1 row in set (0.11 sec)
Zerofill with default width, the same as int(10):
mysql> create table t (t int zerofill);
Query OK, 0 rows affected (0.02 sec)
mysql> insert into t set t = 10;
Query OK, 1 row affected (0.02 sec)
mysql> select * from t;
+————+
| t |
+————+
| 0000000010 |
+————+
1 row in set (0.08 sec)
Without zerofill:
mysql> create table t (t int);
Query OK, 0 rows affected (0.01 sec)
mysql> insert into t set t = 10;
Query OK, 1 row affected (0.01 sec)
mysql> select * from t;
+——+
| t |
+——+
| 10 |
+——+
1 row in set (0.00 sec)
One common usage for this is creating invoice ids. It saves the work of having to use lpad() for ids like this ‘UP000009′
MySQL has a little know feature for numerical types known as zerofill. This feature effects the display size of numerical types. Unlike the string types the number inside the parentheses is not the storage size in characters for the type. For numerical types the type name itself determines storage size.Column Type Bytes On Disk Signed Storage Range Unsigned Storage Range
The confusion between types comes from the number inside parentheses for different types. The integer type it’s the padding size for zerofill. The following examples demonstrates zerofill. All of these tables store the same range of values since they are all integer type.
Zerofill with padding specified:
mysql> create table t (t int(3) zerofill);
Query OK, 0 rows affected (0.00 sec)
mysql> insert into t set t = 10;
Query OK, 1 row affected (0.00 sec)
mysql> select * from t;
+——+
| t |
+——+
| 010 |
+——+
1 row in set (0.11 sec)
Zerofill with default width, the same as int(10):
mysql> create table t (t int zerofill);
Query OK, 0 rows affected (0.02 sec)
mysql> insert into t set t = 10;
Query OK, 1 row affected (0.02 sec)
mysql> select * from t;
+————+
| t |
+————+
| 0000000010 |
+————+
1 row in set (0.08 sec)
Without zerofill:
mysql> create table t (t int);
Query OK, 0 rows affected (0.01 sec)
mysql> insert into t set t = 10;
Query OK, 1 row affected (0.01 sec)
mysql> select * from t;
+——+
| t |
+——+
| 10 |
+——+
1 row in set (0.00 sec)
One common usage for this is creating invoice ids. It saves the work of having to use lpad() for ids like this ‘UP000009′
0 0
- MySQL int(11) 和 int(3) 在数据库里存储一样的结果
- MySQL int(11) 和 int(3) 在数据库里存储一样的结果
- mysql 数据库中 int(3) 和 int(11) 什么区别?
- mysql 数据库中 int(3) 和 int(11) 什么区别?
- int和long int为什么字节数是一样的?
- mysql 数据库中 int(3) 和 int(11) 有区别么???
- MySQL在创建数据表的时候int(3)和int有什么区别?
- Mysql中,int(10)和int(11)的区别
- Mysql中,int(10)和int(11)的区别
- Mysql中,int(10)和int(11)的区别
- Mysql中,int(10)和int(11)的区别
- Mysql中,int(10)和int(11)的区别
- Mysql中,int(10)和int(11)的区别
- Mysql中,int(10)和int(11)的区别
- mysql数据库中存储数字字段时,选择int和varchar的区别
- IP地址在mysql的存储(IP地址和int的转换)
- mysql int(11) 和int(10) 区别
- 在mysql中用int类型存储IP
- 详解C++中指针(*)、取地址(&)、解引用(*)与引用(&)的区别
- 电话簿项目笔记-----------整体设计
- Mac系统下如何创建锁屏快捷键
- 28个Unix/Linux的命令行神器
- spring如何获取request response session
- MySQL int(11) 和 int(3) 在数据库里存储一样的结果
- 最老程序员创业开发实训6---用Swift创建Framework工程重用代码
- 使用toFixed()函数时,出现“toFixed() is not a function”的解决办法
- 事件传递和UIResponder
- Linux_shell——第5章 一团乱麻?没这回事
- golang-反射机制
- 各种引擎规格介绍
- windows com netstat命令过滤字符
- MySQL性能优化的最佳20+条经验