2016-05-13 150 views
0

我试图改变一个表,并在其中一个现有列之后的位置增加列的SQL查询, 但我不能让它因为得到以下的ALTER TABLE

错误:

Msg 102, Level 15, State 1, Line 2 Incorrect syntax near 'AFTER'.

和我使用的查询是:

ALTER TABLE DealerGroup 
ADD Status varchar(50) 
AFTER Description; 
+0

您不能将列添加到表中的特定位置。 –

回答

1

的Microsoft SQL Server不支持after部分,我相信这是具体到MySQL。

在任何情况下,列的内部排序对您无关紧要,除非您在执行select *时依赖获得有序结果,您不应该这样做。

+0

是否有任何其他解决方案在特定位置添加列 – Meena

+1

@Meena我相信不会丢失和重新创建表。 – jpw

0

您不能将列添加到表中的特定位置。实际上,RDBMS(这种情况下的SQL Server)并不关心列在表中的顺序。

当您向表中添加另一列时,它始终显示为“last”。

0

由于在数据库结构中列名的顺序无关紧要,因此您无法在指定的列之后添加列,而且在需要获取数据时,AFTER在更改表查询的情况下也不会定义任何关键字。 或者如果你仍然想要,那么你必须删除表并重新创建它所需的列顺序。