MySQL 資料庫的資料欄位型態可分為文字類型、數值類型、日期時間類型,與特殊類型,下面列出常用的欄位型態:
文字型態
適用於儲存文字資料的欄位型態,其中 VARCHAR 、 CHAR 必須指定文字長度 實際儲存的資料超過設定的文字長度,雖可儲存但超過的部份將被截斷。例如儲存文字「 How are you ? 」到文字長度設定為 10 的欄位,將只剩下「 How are yo 」,若設定過度的文字長度則會佔用儲存空間,建議視實際儲存的資料需求設定文字型態。
資料型態儲存位元說明VARCHAR (M)
非 固 定 長 度 字 元 的 資 料 型 態
例 如 儲 存 通 訊 地 址 。CHAR (M)
固 定 長 度 字 元 的 資 料 型 態
例 如 儲 存 身 份 證 字 號 。TINYTEXT
適 用 於 儲 存 255 字 元 以 內 的 資 料TEXT
適 用 於 儲 存 較 多 字 元 的 資 料
例 如 訪 客 留 言 板 的 內 容MEDIUMTEXT
適 用 於 儲 存 大 容 量 文 字 的 資 料LONGTEXT
適 用 於 儲 存 超 大 容 量 文 字 的 資 料
數值型態
適於於儲存數字資料的欄位型態,例如會員編號、商品價格、學生成績等,設定為 signed 時資料範圍可以是負值,設定為 unsigned 時資料範圍僅能儲存正值。必須注意數值型態的儲存範圍,例如商品價格若為 5000 元,儲存於 TINYINT 數值型態的欄位,查詢時將變成 127 元 ( signed ) 或 255 元 ( unsigned ),造成顯示或計算錯誤的問題,若設定較大的資料範圍則會佔用儲存空間,同樣建議視實際儲存的數值上限設定數值型態。
資料型態位元資料範圍TINYINT
signed: -128 ~ 127
unsigned: 0 ~ 255SMALLINT
signed: -32768 ~ 32767
unsigned: 0 ~ 65535MEDIUMINT
signed: -8388608 ~ 8388607
unsigned: 0 ~ 16777215INT
signed: -2147483648 ~ 2147483647
unsigned: 0 ~ 4294967295BIGINT
signed: -9223372036854775808 ~ 9223372036854775807
unsigned: 0 ~ 1844674407370951615日期時間型態
資料型態儲存位元資料範圍DATE3 bytes1000-01-01 ~ 9999-12-31TIME3 bytes-838:59:59 ~ 838:59:59DATETIME8 bytes1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
[……]