mysql 中的 unsigned 關鍵字用于定義非負整數列,可防止負數插入,提高性能和約束完整性。它適用于整數類型,如 unsigned int,用于存儲正數,包括 0。
MySQL 中的 UNSIGNED 關鍵字
在 MySQL 中,UNSIGNED 關鍵字用于定義非負整數列。它表示該列只能存儲正數,包括 0。
用途:
性能優化:UNSIGNED 列的數據類型大小較小,可以減少存儲和處理開銷,從而提高性能。
約束完整性:UNSIGNED 列防止負數值插入,確保數據完整性。
范圍限制:UNSIGNED 列的取值范圍僅限于正整數,這可以用于定義合理的約束。
語法:
CREATE TABLE table_name ( column_name UNSIGNED INT NOT NULL );
登錄后復制
示例:
創建一張具有名為 “age” 的 UNSIGNED INTEGER 列的表:
CREATE TABLE persons ( age UNSIGNED INT NOT NULL );
登錄后復制
優點:
提高存儲和處理效率。
確保數據完整性。
提供范圍限制。
缺點:
無法存儲負數。
UNSIGNED 列的范圍比有符號列(INT / BIGINT)小。
注意:
默認情況下,INT 和 BIGINT 列是有符號的,可以存儲正負數。
UNSIGNED 關鍵字僅適用于整數類型,不適用于浮點類型或字符串類型。






