一、ALTER 语句
用来修改 现有数据库的表结构。
1、对列的操作
(1)添加列
ALTER TABLE table_name ADD column_name Data_Type [col_options];
(2)删除列
ALTER TABLE table_name DROP COLUMN column_name;
(3)重命名列
ALTER TABLE table_name
CHANGE COLUMN old_name new_name Data_Type [col_options];
(4)修改列数据类型
ALTER TABLE table_name
MODIFY COLUMN column_name Data_Type [col_options];
2、对表约束的操作
(1)PRIMARY KEY
- 添加主键
ALTER TABLE table_name
ADD PRIMARY KEY (column_name);
- 删除主键
ALTER TABLE table_name DROP PRIMARY KEY;
主键唯一,不需要名字。
(2)FOREIGN KEY
- 添加外键
ALTER TABLE table_name
ADD CONSTRAINT fk_name FOREIGN KEY (column_name)
REFERENCES parent_table(column_name);
- 删除外键
ALTER TABLE table_name DROP FOREIGN KEY fk_name;
(3)INDEX
- 添加索引
ALTER TABLE table_name ADD INDEX index_name (column_name);
- 删除索引
ALTER TABLE table_name DROP INDEX index_name;
- 添加CHECK
ALTER TABLE table_name ADD CONSTRAINT chk_name CHECK (condition);
- 删除CHECK
ALTER TABLE table_name DROP CHECK chk_name;
二、DROP语句
DROP 语句 删除约束(内键、外键、索引、CHECK),表和数据库。
- DELETE 语句 删除表中的行。不会删除表本身。
删除某行:
删除所有行:
DELETE * FROM table_name;
可以在不删除表的情况下删除所有的行。表的结构、属性和索引都是完整的。
- DROP 语句
删除整个表,包括表的结构、定义、索引、约束以及表中的所有数据。
DROP TABLE table_name;