CREATE DATABASE `db_name` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
` 包裹標識符,防關鍵字衝突utf8mb4 完整支援 EmojiSHOW DATABASES; SHOW CREATE DATABASE `db_name`; -- 查看建庫語句
DROP DATABASE IF EXISTS `db_name`;
ALTER DATABASE `db_name` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
重命名庫無直連命令,變通方案:
RENAME TABLE old_db.tbl TO new_db.tbl; 逐表移動(原子操作,極快)先切換默認庫:USE `db_name`;
CREATE TABLE `class_info` ( `class_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '班級ID', `class_name` VARCHAR(50) NOT NULL COMMENT '班級名稱', `start_date` DATE NOT NULL COMMENT '開班日期', PRIMARY KEY (`class_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班級信息表';
SHOW TABLES [LIKE 'pattern']; SHOW CREATE TABLE `tbl_name`; -- \G 顯示更清晰 DESC `tbl_name`; -- 或 DESCRIBE
DROP TABLE IF EXISTS `tbl_name`;
-- 重命名表 RENAME TABLE `old_name` TO `new_name`; -- 支援多表同步改名、跨庫移動 -- 增加欄位 ALTER TABLE `tbl_name` ADD `new_col` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '新欄位'; -- 刪除欄位 ALTER TABLE `tbl_name` DROP `old_col`; -- 修改欄位定義(類型/屬性/預設值) ALTER TABLE `tbl_name` MODIFY `col_name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '修改後'; -- 重命名欄位(含定義) ALTER TABLE `tbl_name` CHANGE `old_col` `new_col` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '重命名'; -- 修改表選項(引擎/字符集/註釋) ALTER TABLE `tbl_name` ENGINE=InnoDB COMMENT='新註釋';
-- 全欄位插入(須按表定義順序)
INSERT INTO `class_info` VALUES (NULL, 'Java基礎班', '2024-01-15');
-- 指定欄位插入(推薦,順序無關、擴展性強)
INSERT INTO `class_info` (`class_name`, `start_date`) VALUES ('Python進階班', '2024-02-01');
-- 批量插入
INSERT INTO `class_info` (`class_name`, `start_date`) VALUES
('Go微服務班', '2024-03-01'),
('Rust系統班', '2024-04-01');
-- 全欄位 SELECT * FROM `class_info`; -- 指定欄位 + 條件 SELECT `class_id`, `class_name` FROM `class_info` WHERE `start_date` > '2024-01-01'; -- 模糊查詢 SELECT * FROM `class_info` WHERE `class_name` LIKE '%進階%';
UPDATE `class_info` SET `class_name` = 'Java就業班', `start_date` = '2024-01-20' WHERE `class_id` = 1;
鐵律: 生產環境 **必帶 WHERE 條件**,防誤更新全表。
DELETE FROM `class_info` WHERE `class_id` = 1;
鐵律: 嚴格條件,或先 SELECT 確認受影響行再執行。
app1_user、app2_user 避免衝突START TRANSACTION; ... COMMIT/ROLLBACK;mysqldump -u root -p db_name tbl_name > tbl.sqlmysql -u root -p db_name < tbl.sqlMySQL 基礎操作看似簡單,**規範命名、顯式欄位、嚴格條件、事務保護** 才是專業與業餘的分水嶺。建議將本文作為團隊《MySQL 開發規範》附件,Code Review 時對照檢查。