2011-01-09 59 views
0

兩個字符假設此表爲-1一個字符或INT列

`publish` INT(1) NOT NULL DEFAULT '0' 

能-1〜-9在此列中輸入?

+2

當你測試它會發生什麼? – 2011-01-09 05:31:43

回答

2

是。括號中的數字僅僅是顯示寬度:

http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

特別是:

MySQL支持用於 擴展選擇指定的整數數據類型的顯示 寬度 括號中的鹼基以下關鍵字 爲類型。例如,INT(4) 指定具有四位數的顯示寬度 的INT。此可選顯示器 寬度可由應用程序使用至 顯示整數值,其寬度爲 ,小於爲 列指定的寬度,方法是將它們用 空格填充。 (即,該寬度是 存在於與 返回結果集的元數據。無論是使用或不使用 是由應用程序。)

顯示寬度不限制 值,可以是範圍在列中存儲 。它也不會阻止 的值比列顯示的寬度顯示不正確。 例如,指定爲 SMALLINT(3)的柱具有32767的通常SMALLINT 範圍-32768,和值 由三個 數字允許的範圍之外顯示在充分​​使用 多於三位數字。

int類型支持有符號和無符號整數。

1

是INT(1)可存儲-1到-9。在MySQL,該類型基關鍵字以下括號僅用於填充0如果dispayed數的寬度小於什麼是在paranthesis.For前指定的,使用INT(3),1將被作爲dispayed 001。如果數字大於給定寬度,則數字將完全顯示。例如,對於int(3),1234將顯示爲完整的1234. pamentalhesis中的寬度不會影響可以存儲的實際範圍。

相關問題