MySQL ALTER 命令详细说明以及案例
参考资料
MySQL 的 ALTER 命令用于修改现有表的结构,例如添加、删除或修改列,更改表名,修改列的数据类型等。以下是常见的 ALTER 命令用法及案例:
1. 添加列
ALTER TABLE 表名 ADD 列名 数据类型;
案例:
ALTER TABLE employees ADD email VARCHAR(100);
在 employees 表中添加一个名为 email 的列,数据类型为 VARCHAR(100)。
2. 删除列
ALTER TABLE 表名 DROP COLUMN 列名;
案例:
ALTER TABLE employees DROP COLUMN email;
删除 employees 表中的 email 列。
3. 修改列的数据类型
ALTER TABLE 表名 MODIFY 列名 新数据类型;
案例:
ALTER TABLE employees MODIFY email VARCHAR(150);
将 employees 表中的 email 列的数据类型修改为 VARCHAR(150)。
4. 重命名列
ALTER TABLE 表名 CHANGE 旧列名 新列名 数据类型;
案例:
ALTER TABLE employees CHANGE email employee_email VARCHAR(100);
将 employees 表中的 email 列重命名为 employee_email,并保持数据类型为 VARCHAR(100)。
5. 添加主键
ALTER TABLE 表名 ADD PRIMARY KEY (列名);
案例:
ALTER TABLE employees ADD PRIMARY KEY (employee_id);
将 employees 表中的 employee_id 列设置为主键。
6. 删除主键
ALTER TABLE 表名 DROP PRIMARY KEY;
案例:
ALTER TABLE employees DROP PRIMARY KEY;
删除 employees 表的主键。
7. 添加外键
ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN KEY (列名) REFERENCES 参考表名(参考列名);
案例:
ALTER TABLE orders ADD CONSTRAINT fk_customer FOREIGN KEY (customer_id) REFERENCES customers(customer_id);
在 orders 表中添加一个外键 fk_customer,将 customer_id 列与 customers 表中的 customer_id 列关联。
8. 删除外键
ALTER TABLE 表名 DROP FOREIGN KEY 外键名;
案例:
ALTER TABLE orders DROP FOREIGN KEY fk_customer;
删除 orders 表中的外键 fk_customer。
9. 修改表名
ALTER TABLE 旧表名 RENAME TO 新表名;
案例:
ALTER TABLE employees RENAME TO staff;
将 employees 表重命名为 staff。
10. 添加索引
ALTER TABLE 表名 ADD INDEX 索引名 (列名);
案例:
ALTER TABLE employees ADD INDEX idx_email (email);
在 employees 表的 email 列上添加一个名为 idx_email 的索引。
11. 删除索引
ALTER TABLE 表名 DROP INDEX 索引名;
案例:
ALTER TABLE employees DROP INDEX idx_email;
删除 employees 表中的 idx_email 索引。
12. 修改表的存储引擎
ALTER TABLE 表名 ENGINE = 存储引擎名;
案例:
ALTER TABLE employees ENGINE = InnoDB;
将 employees 表的存储引擎修改为 InnoDB。
13. 修改表的字符集
ALTER TABLE 表名 CONVERT TO CHARACTER SET 字符集名;
案例:
ALTER TABLE employees CONVERT TO CHARACTER SET utf8mb4;
将 employees 表的字符集修改为 utf8mb4。
14. 修改表的注释
ALTER TABLE 表名 COMMENT = '新注释';
案例:
ALTER TABLE employees COMMENT = '员工信息表';
将 employees 表的注释修改为 员工信息表。
15. 修改列的默认值
ALTER TABLE 表名 ALTER 列名 SET DEFAULT 默认值;
案例:
ALTER TABLE employees ALTER email SET DEFAULT 'unknown@example.com';
将 employees 表中 email 列的默认值设置为 unknown@example.com。
16. 删除列的
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
本文来自《西里网 . 宝塔 | 西里网》 -- 发布时间:2025-03-29
本页链接:https://bt.ciilii.com/show/news-31.html
原创声明:本篇文章均为西里网原创,由《DeepSeek-R1 模型》自动生成。内容真实性仅供参考学习。
本作品采用 知识共享署名—非商业性使用—相同方式共享 4.0 国际许可协议 (CC BY-NC-SA 4.0) 进行许可。
