MySQL 作為最流行的開源關聯式資料庫,掌握其基礎操作是資料庫開發與管理的必修課。本文系統整理從登入、建庫、建表、查詢結構到資料匯入的完整流程,適合初學者快速上手,也可作為資深工程師的備忘錄。
SHOW DATABASES;
輸出範例:
+----------+ | Database | +----------+ | mysql | | test | +----------+
CREATE DATABASE abccs;
注意:Linux 系統下資料庫名稱區分大小寫,Windows 則不區分。建議統一使用小寫命名。
USE abccs;
成功會顯示 Database changed,後續操作將在該資料庫下進行。
SHOW TABLES;
CREATE TABLE mytable (
name VARCHAR(20),
sex CHAR(1),
birth DATE,
birthaddr VARCHAR(20)
);
欄位型別選擇說明:
VARCHAR(20):變長字串,適合姓名、城市等長度不固定的欄位CHAR(1):定長單字元,性別欄位只需 'm'/'f',節省空間且效能佳DATE:日期型別,儲存格式 YYYY-MM-DDDESCRIBE mytable;
或縮寫 DESC mytable;,輸出包含欄位名、型別、是否可為 NULL、預設值等資訊。
INSERT INTO mytable VALUES ('abccs', 'f', '1977-07-07', 'china');
SELECT * FROM mytable;
若資料量大,逐筆 INSERT 效率極低。可準備文字檔 mytable.txt,欄位以 Tab 分隔,順序對應建表定義:
abccs f 1977-07-07 china mary f 1978-12-12 usa tom m 1970-09-02 usa
執行匯入:
LOAD DATA LOCAL INFILE "mytable.txt" INTO TABLE mytable;
LOCAL:從客戶端讀取檔案(預設從伺服器端讀取)CREATE TABLE 定義一致FIELDS TERMINATED BY ',' 自訂| 操作 | SQL 語句 |
|---|---|
| 顯示所有資料庫 | SHOW DATABASES; |
| 建立資料庫 | CREATE DATABASE db_name; |
| 刪除資料庫 | DROP DATABASE db_name; |
| 切換資料庫 | USE db_name; |
| 顯示所有資料表 | SHOW TABLES; |
| 查看表結構 | DESC table_name; |
| 插入單筆資料 | INSERT INTO table VALUES (...); |
| 批量匯入文字檔 | LOAD DATA INFILE 'file' INTO TABLE table; |
熟練掌握上述基礎操作,能應付 80% 的日常開發場景。進階學習建議深入:索引設計、查詢優化、事務控制、儲存程序與觸發器等主題。