
- MariaDB 教程
- MariaDB - 首頁
- MariaDB - 簡介
- MariaDB - 安裝
- MariaDB - 管理
- MariaDB - PHP 語法
- MariaDB - 連線
- MariaDB - 建立資料庫
- MariaDB - 刪除資料庫
- MariaDB - 選擇資料庫
- MariaDB - 資料型別
- MariaDB - 建立表
- MariaDB - 刪除表
- MariaDB - 插入查詢
- MariaDB - 選擇查詢
- MariaDB - WHERE 子句
- MariaDB - 更新查詢
- MariaDB - 刪除查詢
- MariaDB - LIKE 子句
- MariaDB - ORDER BY 子句
- MariaDB - JOIN
- MariaDB - NULL 值
- MariaDB - 正則表示式
- MariaDB - 事務
- MariaDB - ALTER 命令
- 索引和統計表
- MariaDB - 臨時表
- MariaDB - 表克隆
- MariaDB - 序列
- MariaDB - 管理重複資料
- MariaDB - SQL 注入防護
- MariaDB - 備份方法
- MariaDB - 備份載入方法
- MariaDB - 常用函式
- MariaDB 常用資源
- MariaDB - 快速指南
- MariaDB - 常用資源
- MariaDB - 討論
MariaDB - 資料型別
良好的欄位定義對於資料庫的最佳化至關重要。理想的方法是隻使用所需型別和大小的欄位。例如,如果只需要一個寬度為五個字元的欄位,則不要定義一個寬度為 20 個字元的欄位。欄位(或列)型別也稱為資料型別,因為它們儲存在欄位中的資料型別。
MariaDB 資料型別可以分為數值型、日期和時間型以及字串型。
數值型資料型別
MariaDB 支援的數值型資料型別如下:
TINYINT - 此資料型別表示介於 -128 到 127(有符號)和 0 到 255(無符號)範圍內的較小整數。
BOOLEAN - 此資料型別將值 0 與“false”關聯,將值 1 與“true”關聯。
SMALLINT - 此資料型別表示介於 -32768 到 32768(有符號)和 0 到 65535(無符號)範圍內的整數。
MEDIUMINT - 此資料型別表示介於 -8388608 到 8388607(有符號)和 0 到 16777215(無符號)範圍內的整數。
INT(也稱為 INTEGER) - 此資料型別表示普通大小的整數。當標記為無符號時,範圍為 0 到 4294967295。當有符號(預設設定)時,範圍為 -2147483648 到 2147483647。當列設定為 ZEROFILL(無符號狀態)時,其所有值前面都會新增零,以使 INT 值達到 M 位數字。
BIGINT - 此資料型別表示介於 -9223372036854775808 到 9223372036854775807(有符號)和 0 到 18446744073709551615(無符號)範圍內的整數。
DECIMAL(也稱為 DEC、NUMERIC、FIXED) - 此資料型別表示精確的定點數字,其中 M 指定其位數,D 指定小數點後的位數。M 值不新增“-”或小數點。如果 D 設定為 0,則不顯示小數或分數部分,並且值將在 INSERT 時四捨五入到最接近的 DECIMAL。允許的最大位數為 65,小數的最大位數為 30。省略 M 時預設值為 10,省略 D 時預設值為 0。
FLOAT - 此資料型別表示值為 0 或在以下範圍內的較小浮點數:
-3.402823466E+38 到 -1.175494351E-38
1.175494351E-38 到 3.402823466E+38
DOUBLE(也稱為 REAL 和 DOUBLE PRECISION) - 此資料型別表示值為 0 或在以下範圍內的普通大小的浮點數:
-1.7976931348623157E+308 到 -2.2250738585072014E-308
2.2250738585072014E-308 到 1.7976931348623157E+308
BIT - 此資料型別表示位欄位,其中 M 指定每個值的位數。省略 M 時,預設值為 1。可以使用“b’[value]’”應用位值,其中 value 表示位值(0 和 1)。零填充會自動從左側進行,以達到完整長度;例如,“10”變為“0010”。
日期和時間資料型別
MariaDB 支援的日期和時間資料型別如下:
DATE - 此資料型別表示“1000-01-01”到“9999-12-31”的日期範圍,並使用“YYYY-MM-DD”日期格式。
TIME - 此資料型別表示“-838:59:59.999999”到“838:59:59.999999”的時間範圍。
DATETIME - 此資料型別表示“1000-01-01 00:00:00.000000”到“9999-12-31 23:59:59.999999”的範圍。它使用“YYYY-MM-DD HH:MM:SS”格式。
TIMESTAMP - 此資料型別表示“YYYY-MM-DD HH:MM:DD”格式的時間戳。它主要用於詳細說明資料庫修改的時間,例如插入或更新。
YEAR - 此資料型別表示 4 位數字格式的年份。四位數字格式允許的值範圍為 1901 到 2155,以及 0000。
字串資料型別
MariaDB 支援的字串型別值如下:
字串字面量 - 此資料型別表示用引號括起來的字元序列。
CHAR - 此資料型別表示右填充的固定長度字串,包含指定長度的空格。M 表示字元的列長度,範圍為 0 到 255,其預設值為 1。
VARCHAR - 此資料型別表示可變長度字串,M 範圍(最大列長度)為 0 到 65535。
BINARY - 此資料型別表示二進位制位元組字串,其中 M 為以位元組為單位的列長度。
VARBINARY - 此資料型別表示可變長度的二進位制位元組字串,其中 M 為列長度。
TINYBLOB - 此資料型別表示最大長度為 255(28 - 1)位元組的 blob 列。在儲存中,每個都使用一個位元組的長度字首來指示值中的位元組數量。
BLOB - 此資料型別表示最大長度為 65,535(216 - 1)位元組的 blob 列。在儲存中,每個都使用一個兩位元組的長度字首來指示值中的位元組數量。
MEDIUMBLOB - 此資料型別表示最大長度為 16,777,215(224 - 1)位元組的 blob 列。在儲存中,每個都使用一個三位元組的長度字首來指示值中的位元組數量。
LONGBLOB - 此資料型別表示最大長度為 4,294,967,295(232 - 1)位元組的 blob 列。在儲存中,每個都使用一個四位元組的長度字首來指示值中的位元組數量。
TINYTEXT - 此資料型別表示最大長度為 255(28 - 1)字元的文字列。在儲存中,每個都使用一個位元組的長度字首來指示值中的位元組數量。
TEXT - 此資料型別表示最大長度為 65,535(216 - 1)字元的文字列。在儲存中,每個都使用一個兩位元組的長度字首來指示值中的位元組數量。
MEDIUMTEXT - 此資料型別表示最大長度為 16,777,215(224 - 1)字元的文字列。在儲存中,每個都使用一個三位元組的長度字首來指示值中的位元組數量。
LONGTEXT - 此資料型別表示最大長度為 4,294,967,295 或 4GB(232 - 1)字元的文字列。在儲存中,每個都使用一個四位元組的長度字首來指示值中的位元組數量。
ENUM - 此資料型別表示一個字串物件,它只有一個來自列表的值。
SET - 此資料型別表示一個字串物件,它可以有零個或多個來自列表的值,最多 64 個成員。SET 值在內部表示為整數值。