MySQL中整型和字符串類型指定長度的含義


引入:

  int(5)和char(5)或者varchar(5)中的數字指的是什么意思?是字節數,還是字符長度?為什么在整型中指定了int(5)卻可以輸入123456?

  答案是后者,不管是整型還是字符串類型,后面跟的數字都是字符長度,即字符的個數,而且需要強調說明的是:在整型后面指定的數字指的是最小顯示長度,即要顯示的value值的最小字符個數,若實際的value值的字符個數少於之前字段后面設置的個數,則會用0在value前面進行填充(同時要為字段加上約束條件 zerofill,使用select才能查看到真正的結果);若value值的字符個數大於字段后面設置的個數,則也會正常顯示,因為指定的數值是顯示長度,不是存儲長度,整型類型的默認存儲長度為11個字符,滿足絕大多數環境下的使用,因此int后面不需要指定數值,即使指定了也沒有意義。

  用一句話說明int類型的使用,指定的長度只是顯示長度,不是存儲長度,存儲長度默認為11個字符,因此無需指定int類型的長度。

  對於字符串類型后面的數字指的是字符的存儲長度,即存儲字符的個數不能超過這個限制,否則無法插入。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM