資料庫的建立與刪除是 MySQL 管理的基礎操作。本文從基本指令、字元集指定、切換資料庫、建表刪表到完整腳本範例,提供一站式實戰教學,適合初學者快速上手與工程師查閱參考。
| 操作 | 指令 | 說明 |
|---|---|---|
| 建立資料庫 | CREATE DATABASE <db_name>; | 基本建立 |
| 建立資料庫(指定字元集) | CREATE DATABASE <db_name> DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; | 建議生產環境使用 utf8mb4 |
| 刪除資料庫 | DROP DATABASE <db_name>; | 永久刪除,不可恢復 |
| 刪除資料庫(安全) | DROP DATABASE IF EXISTS <db_name>; | 不存在不報錯 |
| 切換資料庫 | USE <db_name>; | 設定當前預設資料庫 |
| 查看所有資料庫 | SHOW DATABASES; | 列出所有資料庫 |
mysql> CREATE DATABASE myDatabase;
Query OK, 1 row affected (0.03 sec)
mysql> DROP DATABASE myDatabase;
Query OK, 0 rows affected (0.01 sec)
CREATE DATABASE myDatabase
DEFAULT CHARACTER SET utf8mb4
COLLATE utf8mb4_unicode_ci;
說明: utf8mb4 支援完整 Unicode(含 Emoji),utf8mb4_unicode_ci 排序準確;舊版 utf8 僅支援 3 位元組字符,utf8_general_ci 排序較快但不準確。
mysql> CREATE DATABASE myDatabase;
Query OK, 1 row affected (0.02 sec)
mysql> USE myDatabase;
Database changed
mysql> CREATE TABLE myTable (
-> c1 CHAR(10)
-> );
Query OK, 0 rows affected (0.03 sec)
mysql> DROP TABLE myTable;
Query OK, 0 rows affected (0.00 sec)
mysql> DROP DATABASE myDatabase;
Query OK, 0 rows affected (0.00 sec)
-- 建立資料庫(指定字元集)
CREATE DATABASE IF NOT EXISTS `myDatabase`
DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- 切換資料庫
USE `myDatabase`;
-- 建立範例表
CREATE TABLE `myTable` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
`name` VARCHAR(50) NOT NULL,
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 清理環境(測試用)
DROP TABLE IF EXISTS `myTable`;
DROP DATABASE IF EXISTS `myDatabase`;
Unix/Linux: 資料庫與表名稱區分大小寫(視檔案系統而定,通常區分)。
Windows: 不區分大小寫(檔案系統不區分)。
建議統一使用小寫名稱,避免跨平台遷移問題。
CREATE DATABASE IF NOT EXISTS xxx; 或先 DROP DATABASE xxx;。FLUSH PRIVILEGES; 並重新登入確認。mysqldump -u root -p db_name > backup.sql 完成後再 DROP DATABASE db_name;。掌握 CREATE/DROP/USE DATABASE 三大核心指令,搭配字元集正確設定、跨平台命名規範、安全刪除習慣,即能輕鬆掌控 MySQL 資料庫生命週期。建議將常用腳本模板化,納入版本控管,提升團隊協作效率。