在資料庫開發中,建立資料表是最基礎也最關鍵的操作之一。本文將透過實際範例,詳細說明 MySQL 建表語句的語法結構、常見欄位型別設定以及主鍵與自動遞增的配置方式,幫助你快速掌握建表核心技巧。
MySQL 建表的標準語法如下:
CREATE TABLE 表名 (
欄位名1 資料型別 [約束條件],
欄位名2 資料型別 [約束條件],
...
欄位名N 資料型別 [約束條件]
);
以下範例建立一個名為 user 的使用者資料表,包含 ID、姓名、年齡、性別、電話五個欄位:
| 欄位名 | 資料型別 | 說明 |
|---|---|---|
| user_id | INT(4) | 主鍵,自動遞增 |
| name | VARCHAR(20) | 使用者姓名 |
| age | INT(4) | 年齡 |
| sex | VARCHAR(4) | 性別 |
| phone | VARCHAR(10) | 電話號碼 |
CREATE TABLE user (
user_id INT(4) PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20),
age INT(4),
sex VARCHAR(4),
phone VARCHAR(10)
);
執行成功後,可透過 DESC user; 查看表結構,結果如下圖所示:

注意:MySQL 不支援 VARCHAR2 型別,這是 Oracle 資料庫的專有型別。若在建表時誤用 VARCHAR2 會導致語法錯誤,請統一使用 VARCHAR。
經驗分享:初學者常因習慣 Oracle 語法而誤寫 VARCHAR2,建議養成使用標準 VARCHAR 的習慣,避免跨資料庫遷移時出現相容性問題。
BIGINT 或 INT 搭配 AUTO_INCREMENTNOT NULL 或預設值user_info)COMMENT)方便後續維護掌握基本建表後,建議進一步學習:
ALTER TABLE 修改表結構操作