基準表:
CREATE TABLE `person` (
`number` INT(11) DEFAULT NULL,
`name` VARCHAR(255) DEFAULT NULL,
`birthday` DATE DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- 刪除列
ALTER TABLE person DROP COLUMN birthday;
-- 新增列
ALTER TABLE person ADD COLUMN birthday DATETIME;
-- 修改列類型/屬性(不改名)
ALTER TABLE person MODIFY number BIGINT NOT NULL;
-- 修改列名+類型
ALTER TABLE person CHANGE number id BIGINT;
ALTER TABLE person ADD PRIMARY KEY (id);
ALTER TABLE person DROP PRIMARY KEY;
-- 唯一索引
ALTER TABLE person ADD UNIQUE name_unique_index (`name`);
-- 普通索引
ALTER TABLE person ADD INDEX birthday_index (`birthday`);
-- 刪除索引
ALTER TABLE person DROP INDEX birthday_index;
ALTER TABLE person DROP INDEX name_unique_index;
ALTER TABLE person DISABLE KEYS; -- 停止更新非唯一索引
ALTER TABLE person ENABLE KEYS; -- 重建索引
-- 表默認字符集 + 所有字符列轉換
ALTER TABLE person CONVERT TO CHARACTER SET utf8mb4;
-- 單列轉換
ALTER TABLE person CHANGE name name VARCHAR(255) CHARACTER SET utf8mb4;
-- 僅修改表默認字符集(不影響現有列)
ALTER TABLE person DEFAULT CHARACTER SET utf8mb4;
RENAME TABLE person TO person_other;
RENAME TABLE current_db.tbl_name TO other_db.tbl_name;