unsigned 是在 MySQL 中用來設定數值只能是正的屬性,比如 tinyint 原本的範圍是 -128~128,加了 unsigned 的屬性後,範圍就會變成從 0~255 這樣,對於一些欄位如果確定不會有負數,可以設定這個屬性增加資料長度。
不過注意 unsigned 只能針對整數,以下是該類在是否有 unsigned 的長度差別。
型態 |
空間 |
範圍 |
TINYINT[(M)] |
1 byte |
Signed: -128 to 127 (-27 to 27-1) |
SMALLINT[(M)] |
2 bytes |
Signed: -32768 to 32767 (-215 to 215-1) |
MEDIUNINT[(M)] |
3 bytes |
Signed: -8388608 to 8388607 (-223 to 223-1) |
INT[(M)] |
4 bytes |
Signed: -2147483648 to 2147483647 (-231 to 231-1) |