📜  SQL ALTER表(1)

📅  最后修改于: 2023-12-03 15:05:16.999000             🧑  作者: Mango

SQL ALTER Table

SQL ALTER Table语句用于向已存在的数据库表中添加,删除或修改列,以及更改表的约束条件。

增加列

要向已存在的表中添加列,可以使用ALTER TABLE语句,并使用ADD COLUMN子句指定要添加的列的详细信息。

例如,以下是向表中添加一列的示例:

ALTER TABLE 表名 ADD COLUMN 列名 数据类型;

其中,表名是要添加列的表的名称,列名是要添加的列的名称,数据类型则是要添加的列的数据类型。

例如,要向名为“employees”的表中添加名为“hire_date”的日期列,可以使用以下语句:

ALTER TABLE employees ADD COLUMN hire_date DATE;

这将在“employees”表中添加一个名为“hire_date”的日期列。

修改列

如果要修改表中的某一列,可以使用ALTER TABLE语句,并使用ALTER COLUMN子句指定要修改的列的详细信息。

例如,以下是修改表中列的数据类型的示例:

ALTER TABLE 表名 ALTER COLUMN 列名 新数据类型;

其中,表名是要修改列的表的名称,列名是要修改的列的名称,新数据类型则是要将列更改为的数据类型。

例如,要更改名为“hire_date”的列的数据类型为TIME,可以使用以下语句:

ALTER TABLE employees ALTER COLUMN hire_date TIME;

这将在“employees”表中将名为“hire_date”的列的数据类型更改为TIME。

删除列

要从已存在的表中删除列,可以使用ALTER TABLE语句,并使用DROP COLUMN子句指定要删除的列的名称。

例如,以下是从表中删除列的示例:

ALTER TABLE 表名 DROP COLUMN 列名;

其中,表名是要删除列的表的名称,列名是要删除的列的名称。

例如,要从名为“employees”的表中删除名为“hire_date”的列,可以使用以下语句:

ALTER TABLE employees DROP COLUMN hire_date;

这将从“employees”表中删除名为“hire_date”的列。

修改表的约束条件

要修改表的约束条件,可以使用ALTER TABLE语句,并使用ADD CONSTRAINT, DROP CONSTRAINT或ALTER CONSTRAINT子句指定要添加、删除或修改的约束条件。

例如,以下是向表中添加新约束条件(外键)的示例:

ALTER TABLE 表1 ADD CONSTRAINT 外键名称 FOREIGN KEY (列1) REFERENCES 表2 (列2);

其中,表1是要添加外键的表的名称,外键名称是要添加外键的名称,列1是表1中的列,它将成为外键,表2是外键关联的表的名称,列2是表2中的列。

例如,要向名为“employees”的表中添加一个名为“fk_department”的外键,将department_id列与名为“departments”的表中的department_id列相关联,可以使用以下语句:

ALTER TABLE employees ADD CONSTRAINT fk_department FOREIGN KEY (department_id) REFERENCES departments (department_id);

这将在“employees”表中添加一个名为“fk_department”的外键,并将department_id列与“departments”表中的department_id列相关联。