CG 數位學習網 > PHP 教學



MySQL 資料庫的資料欄位型態可分為文字類型、數值類型、日期時間類型,與特殊類型,下面列出常用的欄位型態:

文字型態

適用於儲存文字資料的欄位型態,其中 VARCHAR 、 CHAR 必須指定文字長度 實際儲存的資料超過設定的文字長度,雖可儲存但超過的部份將被截斷。例如儲存文字「 How are you ? 」到文字長度設定為 10 的欄位,將只剩下「 How are yo 」,若設定過度的文字長度則會佔用儲存空間,建議視實際儲存的資料需求設定文字型態。

資料型態 儲存位元 說明
VARCHAR (M) 1~255 非固定長度字元的資料型態,例如儲存 E-Mail 信箱、聯絡地址 等。
CHAR (M) 1~255 固定長度字元的資料型態,例如儲存身份證字號、手機號碼 等。
TINYTEXT 255 適用於儲存 255 字元以內的資料
TEXT 65,535 適用於儲存較多字元的資料,例如商品介紹、留言內容 等。
MEDIUMTEXT 1,677,215 適用於儲存大容量文字的資料。
LONGTEXT 4,294,967,295 適用於儲存超大容量文字的資料。

 

數值型態

適於於儲存數字資料的欄位型態,例如會員編號、商品價格、學生成績等,設定為 signed 時資料範圍可以是負值,設定為 unsigned 時資料範圍僅能儲存正值。必須注意數值型態的儲存範圍,例如商品價格若為 5000 元,儲存於 TINYINT 數值型態的欄位,查詢時將變成 127 元 ( signed ) 或 255 元 ( unsigned ),造成顯示或計算錯誤的問題,若設定較大的資料範圍則會佔用儲存空間,同樣建議視實際儲存的數值上限設定數值型態。

資料型態 儲存位元 資料範圍
TINYINT 1 byte signed: -128 ~ 127
unsigned: 0 ~ 255
SMALLINT 2 bytes signed: -32768 ~ 32767
unsigned: 0 ~ 65535
MEDIUMINT 3 bytes signed: -8388608 ~ 8388607
unsigned: 0 ~ 16777215
INT 4 bytes signed: -2147483648 ~ 2147483647
unsigned: 0 ~ 4294967295
BIGINT 8 bytes signed: -9223372036854775808 ~ 9223372036854775807
unsigned: 0 ~ 1844674407370951615

 

日期時間型態

資料型態 儲存位元 資料範圍
DATE 3 bytes 1000-01-01 ~ 9999-12-31
TIME 3 bytes -838:59:59 ~ 838:59:59
DATETIME 8 bytes 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59

 

有關 MySQL 資料型態的詳細介紹可參考官方網站的說明:

http://dev.mysql.com/doc/refman/5.0/en/data-types.html



~ CG 數位學習網版權所有 ~