当前位置:网站首页>What is the difference between int (1) and int (10)? Senior developers can't tell!
What is the difference between int (1) and int (10)? Senior developers can't tell!
2022-07-06 06:46:00 【Java notes shrimp】
Click on the official account , utilize Fragment time to learn
confused
I have a problem recently , If you have a watch, you need to add user_id Field ,user_id Fields can be very large , So I mentioned mysql The repair order alter table xxx ADD user_id int(1)
. The leader saw my sql The repair order , So he said : this int(1) I'm afraid it's not enough , Next is an explanation .
In fact, this is not the first time I have encountered such a problem , Many of them have jobs 5 An old driver of more than years . Including I often see that my colleagues have been using int(10)
, It feels like it's working int(1)
, The upper limit of the field is limited , This is certainly not the case .
Data speak
We know that mysql in int Occupy 4 Bytes , So for unsigned int, The maximum is 2^32-1 = 4294967295
, nearly 40 Billion , Did you use it int(1)
, Can't you reach this maximum ?
CREATE TABLE `user` (
`id` int(1) unsigned NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
id The field is unsigned int(1)
, Let me insert a maximum to see .
mysql> INSERT INTO `user` (`id`) VALUES (4294967295);
Query OK, 1 row affected (0.00 sec)
You can see the success , explain int Back number , No effect int Size supported by itself ,int(1)
、int(2)
...int(10)
No difference .
Zero fill
commonly int Back number , coordination zerofill It works when used together . Let's take an example :
CREATE TABLE `user` (
`id` int(4) unsigned zerofill NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
Be careful int(4)
There's a... In the back zerofill, Let's insert 4 Data .
mysql> INSERT INTO `user` (`id`) VALUES (1),(10),(100),(1000);
Query OK, 4 rows affected (0.00 sec)
Records: 4 Duplicates: 0 Warnings: 0
Insert separately 1、10、100、1000 4 Data , Then let's check :
mysql> select * from user;
+------+
| id |
+------+
| 0001 |
| 0010 |
| 0100 |
| 1000 |
+------+
4 rows in set (0.00 sec)
Through the data, we can find int(4) + zerofill Realized the deficiency 4 Place complement 0 The phenomenon of , only int(4) It's no use .
And for 0001 such , The underlying storage is still 1, Just in the show will make up 0.
summary
int The following number cannot represent the length of the field ,int(num)
General plus zerofill, It works .zerofill The function of can generally be used in some numbers related to numbers , For example, the student's number 001 002 ... 999 such , If mysql There is no function of zero padding , But when you have to format and output numbers of equal length , Then you have to deal with it yourself .

source :juejin.cn/post/6992574502282477605
recommend :
Main stream Java Advanced technology ( Learning material sharing )
PS: Because the official account platform changed the push rules. , If you don't want to miss the content , Remember to click after reading “ Looking at ”, Add one “ Star standard ”, In this way, each new article push will appear in your subscription list for the first time . spot “ Looking at ” Support us !
边栏推荐
- [web security] nodejs prototype chain pollution analysis
- 生物医学英文合同翻译,关于词汇翻译的特点
- L'Ia dans les nuages rend la recherche géoscientifique plus facile
- 成功解决TypeError: data type ‘category‘ not understood
- Monotonic stack
- Pallet management in SAP SD delivery process
- Chinese English comparison: you can do this Best of luck
- How effective is the Chinese-English translation of international economic and trade contracts
- Suspended else
- Cobalt Strike特征修改
猜你喜欢
国产游戏国际化离不开专业的翻译公司
University of Manchester | dda3c: collaborative distributed deep reinforcement learning in swarm agent systems
论文摘要翻译,多语言纯人工翻译
Bitcoinwin (BCW): 借贷平台Celsius隐瞒亏损3.5万枚ETH 或资不抵债
How to translate professional papers and write English abstracts better
Biomedical English contract translation, characteristics of Vocabulary Translation
Traffic encryption of red blue confrontation (OpenSSL encrypted transmission, MSF traffic encryption, CS modifying profile for traffic encryption)
翻译生物医学说明书,英译中怎样效果佳
国际经贸合同翻译 中译英怎样效果好
Tms320c665x + Xilinx artix7 DSP + FPGA high speed core board
随机推荐
[Yu Yue education] Dunhuang Literature and art reference materials of Zhejiang Normal University
Number of query fields
翻译影视剧字幕,这些特点务必要了解
接口自动化测试实践指导(上):接口自动化需要做哪些准备工作
Changes in the number of words in English papers translated into Chinese
Difference between backtracking and recursion
如何将flv文件转为mp4文件?一个简单的解决办法
机器学习植物叶片识别
万丈高楼平地起,每个API皆根基
LeetCode - 152 乘积最大子数组
SSO process analysis
生物医学英文合同翻译,关于词汇翻译的特点
Leetcode - 152 product maximum subarray
[brush questions] how can we correctly meet the interview?
Defense (greed), FBI tree (binary tree)
It is necessary to understand these characteristics in translating subtitles of film and television dramas
【刷题】怎么样才能正确的迎接面试?
Basic commands of MySQL
Is it difficult for girls to learn software testing? The threshold for entry is low, and learning is relatively simple
Py06 字典 映射 字典嵌套 键不存在测试 键排序