从现有SQL表中删除所有列

问题描述 投票:0回答:2

我需要在MSSQL中删除现有表中的所有列。通过指定每个列名可以删除列。我想删除每列而不指定列名。我正在寻找类似

的东西
ALTER TABLE tblUser DROP COLUMN *;

有没有已知的方法可以做到这一点?

sql-server ddl
2个回答
0
投票

代替删除所有列,您可以删除表格

DROP TABLE TABLENAME

或者您可以在Alter查询中提及所有列名称

ALETR TABLE TableName DROP COLUMN Column1, Column2, Column3....ColumnN

0
投票

从字面上回答您的问题,不,您不能。如果您尝试删除最后一列,SQL Server将引发以下错误:

Msg 4923,第16级,状态1,第12行

ALTER TABLE DROP COLUMN失败,因为'Id'是表'NoColumns'中的唯一数据列。 一个表必须至少具有一个数据列。

同样,如果您实际上想解决问题,无论是什么,最好是说出最初的问题,而不是您决定追求的解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.