*這可能是我見過最沒鳥用的東西了
顯示寬度
什麼是顯示寬度?
在一些sql語句中你可能會看到這樣一些寫法
CREATE TABLE `<table_name>` (
`name` varchar(10),
`age` int(2)
);
複製程式碼
其中name
varchar(10)
這行我們很熟悉 varchar(10)
表示初始長度為10,
但是後面的 age
int(2)
中這個 int後面跟著的這個2是什麼樣意思,其實這個就是顯示寬度。
所謂的顯示寬度,其實就是顯示的時候,看到的最少數字個數。
比如 int(2) ,表示不管你的數值是多少,最少可以看到兩個數字。假如你存的數值的9,沒有滿兩位,就會在前面補零。假如你的數值是120,超過了顯示寬度,則直接顯示原始值,不做補零操作。
注意:顯示寬度不會對原本的值進行更改,只會在顯示的時候改變數值的樣式。
要想讓顯示寬度用零來填充,還需要加上一個關鍵字,如下
CREATE TABLE `<table_name>` (
`name` varchar(10),
`age` int(2) ZEROFILL
);
複製程式碼
int(2) ZEROFILL
這樣才能發揮顯示寬度的功能
注意
-
顯示寬度只適應於Mysql的數值型別
-
顯示寬度和數值型別的取值範圍是無關的。
例如int(10) 他的取值範圍任然是(-2 147 483 648,2 147 483 647) -
顯示寬度只是指明MYSQL數值型別最少顯示的數字個數。
當數值的位數小於顯示寬度時會有空格或零填充,當數值的位數大於顯示寬度時,直接顯示該數值 -
顯示寬度的效果(插零)需要配合zerofill使用
番外
我發現 顯示寬度 這個沒鳥用的東西是因為在使用 Navicat這個資料庫管理工具在建立表時,數值型別的欄位也可以填一個長度。於是便在網上找相關的資料。