MYSQL數據庫常用基本數據類型

在 MySQL 中,有三種主要的類型:Text(文本)、Number(數字)和 Date/Time(日期/時間)類型。
Text 類型:

數據類型 描述 長度是否固定
CHAR(size) 保存固定長度的字符串(可包含字母、數字以及特殊字符)。在括號中指定字符串的長度。最多 255 個字符。
VARCHAR(size) 保存可變長度的字符串(可包含字母、數字以及特殊字符)。在括號中指定字符串的最大長度。最多 255 個字符。如果值的長度大于 255,則被轉換為 TEXT 類型。
TINYTEXT 存放最大長度為 255 個字符的字符串。
TEXT 存放最大長度為 65,535 個字符的字符串。
BLOB 用于 BLOBs(Binary Large OBjects)。存放最多 65,535 字節的數據。
MEDIUMTEXT 存放最大長度為 16,777,215 個字符的字符串。
MEDIUMBLOB 用于 BLOBs(Binary Large OBjects)。存放最多 16,777,215 字節的數據
LONGTEXT 存放最大長度為 4,294,967,295 個字符的字符串。
LONGBLOB 用于 BLOBs (Binary Large OBjects)。存放最多 4,294,967,295 字節的數據。
ENUM(x,y,z,etc.) 允許您輸入可能值的列表。可以在 ENUM 列表中列出最大 65535 個值。如果列表中不存在插入的值,則插入空值。這些值是按照您輸入的順序排序的。可以按照此格式輸入可能的值ENUM('X','Y','Z')
SET 與 ENUM 類似,不同的是,SET 最多只能包含 64 個列表項且 SET 可存儲一個以上的選擇。

Number 類型:

數據類型 描述 占用字節數
TINYINT(size) -128 到 127 常規。0 到 255 無符號*。在括號中規定最大位數。 1字節
SMALLINT(size) -32768 到 32767 常規。0 到 65535 無符號*。在括號中規定最大位數。 2字節
MEDIUMINT(size) -8388608 到 8388607 普通。0 to 16777215 無符號*。在括號中規定最大位數。 3字節
INT(size) -2147483648 到 2147483647 常規。0 到 4294967295 無符號*。在括號中規定最大位數。 4字節
BIGINT(size) -9223372036854775808 到 9223372036854775807 常規。0 到 18446744073709551615 無符號*。在括號中規定最大位數。 8字節
FLOAT(size,d) 帶有浮動小數點的小數字。在 size 參數中規定最大位數。在 d 參數中規定小數點右側的最大位數。 4字節
DOUBLE(size,d) 帶有浮動小數點的大數字。在 size 參數中規定最大位數。在 d 參數中規定小數點右側的最大位數。 8字節
DECIMAL(size,d) 作為字符串存儲的 DOUBLE 類型,允許固定的小數點。在 size 參數中規定最大位數。在 d 參數中規定小數點右側的最大位數。 decimal是存儲為字符串的浮點數

*這些整數類型擁有額外的選項 UNSIGNED。通常,整數可以是負數或正數。如果添加 UNSIGNED 屬性,那么范圍將從 0 開始,而不是某個負數。

Date 類型:

數據類型 描述 占用字節數
DATE() 日期。格式:YYYY-MM-DD 。注釋:支持的范圍是從 '1000-01-01' 到 '9999-12-31' 3字節
DATETIME() 日期和時間的組合。格式:YYYY-MM-DD HH:MM:SS注釋:*支持的范圍是從 '1000-01-01 00:00:00' 到 '9999-12-31 23:59:59' 8字節
TIMESTAMP() 時間戳。TIMESTAMP 值使用 Unix 紀元('1970-01-01 00:00:00' UTC) 至今的秒數來存儲。格式:YYYY-MM-DD HH:MM:SS注釋:*支持的范圍是從 '1970-01-01 00:00:01' UTC 到 '2038-01-09 03:14:07' UTC 4字節
TIME() 時間。格式:HH:MM:SS注釋:支持的范圍是從 '-838:59:59' 到 '838:59:59' 3字
YEAR() 2 位或 4 位格式的年。注釋:4 位格式所允許的值:1901 到 2155。2 位格式所允許的值:70 到 69,表示從 1970 到 2069。 1字節,代表年份。

*即便 DATETIME 和 TIMESTAMP 返回相同的格式,它們的工作方式很不同。在 INSERT 或 UPDATE 查詢中,TIMESTAMP 自動把自身設置為當前的日期和時間。TIMESTAMP 也接受不同的格式,比如 YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDD 或 YYMMDD。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容