如何从现有表中删除列?

我有一个Fname和Lname的table MEN

我需要删除Lname

怎么做呢?


当前回答

这也可以通过SSMS GUI来完成。这个方法的好处是它会警告你是否该列上有任何关系,也可以自动删除这些关系。

将表格放入设计视图(右键单击表格),如下所示:

右键单击表的Design视图中的列,然后单击“Delete” 列”

如前所述,如果有任何关系也需要删除,此时它将询问您是否也想删除这些关系。您可能需要这样做来删除列。

其他回答

泛型:

ALTER TABLE table_name DROP COLUMN column_name;

在你的情况下:

ALTER TABLE MEN DROP COLUMN Lname;

这也可以通过SSMS GUI来完成。这个方法的好处是它会警告你是否该列上有任何关系,也可以自动删除这些关系。

将表格放入设计视图(右键单击表格),如下所示:

右键单击表的Design视图中的列,然后单击“Delete” 列”

如前所述,如果有任何关系也需要删除,此时它将询问您是否也想删除这些关系。您可能需要这样做来删除列。

在现有表中添加列:

ALTER TABLE table_name
 ADD
 column_name DATATYPE NULL  

删除现有表中的列。

ALTER TABLE table_name
DROP COLUMN column_name

下面是正确答案:

ALTER TABLE MEN DROP COLUMN Lname

但是…如果列上存在约束,则必须先删除约束,然后才能删除列。为了删除一个约束,运行:

ALTER TABLE MEN DROP CONSTRAINT {constraint_name_on_column_Lname}

语法:

ALTER TABLE TABLE_NAME DROP COLUMN COLUMN_NAME;

例如:

alter table Employee drop column address;