2010-10-09 45 views

回答

389

MySQL說:

所有整數類型可以有一個可選 (非標準)屬性UNSIGNED。當你需要該列的較大的上 數值範圍 無符號類型可用於許可證 僅爲非負數在列。對於 例如,如果INT列是UNSIGNED, 的列的範圍的大小是 相同,但其端點從 -2147483648和2147483647移動到0到4294967295

什麼時候使用它?

問這個問題:這個字段是否會包含負值
如果答案是否定的,那麼你想要一個UNSIGNED數據類型。

一個常見的錯誤是使用一個主鍵是自動遞增INT開始,但類型是SIGNED,在這種情況下,你將永遠不會觸及任何負數的,你正在減少可能的id範圍爲一半。

+5

表示事物'大小'的值,例如訂單上特定項目的數量或兩個位置之間的距離,通常都是無符號的 – SingleNegationElimination 2010-10-09 04:28:25

+13

很好的答案,看起來很奇怪,mysql不會默認整數來unsigned他們是自動增加身份? – wired00 2014-10-30 03:19:27

+1

如果你想要更清晰的答案,看看這個https://stackoverflow.com/a/11515613/6335029 – NaveenDA 2017-10-25 16:58:39

相關問題