SQL |改变(添加、删除、修改)
ALTER TABLE 用于添加、删除/删除或修改现有表中的列。它还用于在现有表上添加和删除各种约束。
更改表 - 添加
ADD 用于将列添加到现有表中。有时我们可能需要添加额外的信息,在这种情况下我们不需要再次创建整个数据库, ADD来拯救我们。
句法:
ALTER TABLE table_name
ADD (Columnname_1 datatype,
Columnname_2 datatype,
…
Columnname_n datatype);
更改表 - 删除
DROP COLUMN 用于删除表中的列。从表中删除不需要的列。
句法:
ALTER TABLE table_name
DROP COLUMN column_name;
改变表 - 修改
它用于修改表中的现有列。也可以一次修改多个列。
*不同数据库中的语法可能略有不同。
语法(Oracle、MySQL、MariaDB):
ALTER TABLE table_name
MODIFY column_name column_type;
语法(SQL Server):
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
查询
样品表:
学生
ROLL_NO | NAME |
1 | Ram |
2 | Abhi |
3 | Rahul |
4 | Tanu |
询问:
- 将 2 列 AGE 和 COURSE 添加到表 Student。
ALTER TABLE Student ADD (AGE number(3),COURSE varchar(40));
输出:
ROLL_NO | NAME | AGE | COURSE |
1 | Ram | ||
2 | Abhi | ||
3 | Rahul | ||
4 | Tanu |
- 修改表 Student 中的 COURSE 列
ALTER TABLE Student MODIFY COURSE varchar(20);
运行上述查询后,Course Column 的最大大小从 40 减少到 20。
- 删除表 Student 中的 COURSE 列。
ALTER TABLE Student DROP COLUMN COURSE;
输出:
ROLL_NO | NAME | AGE |
1 | Ram | |
2 | Abhi | |
3 | Rahul | |
4 | Tanu |