在保留外键约束的同时更改表列顺序

时间:2013-09-13 08:47:06

标签: sql sql-server-2012 ssms

我在SQL Server 2012数据库表中有一个表,其中包含以下列

Id (PK)
Name 
UserId (FK)
Created
Updated

我想通过将Name和UserId交换为

来更改列的顺序
Id (PK)
UserId (FK)
Name
Created
Updated

请注意,该表目前不包含任何数据。通常我不打算编写ALTER脚本,只需使用SQL Management Studio来创建和修改我的表。我通常只是使用DROP AND CREATE TO菜单选项重新创建表并修改列的顺序,但在这种情况下,外键约束阻止我成功完成此操作。

有什么办法可以在保留外键约束的同时更改数据库列的顺序?我能看到的唯一其他解决方案是删除外键约束,重新创建表并再次添加外键约束。

1 个答案:

答案 0 :(得分:2)

磁盘顺序与CREATE中的明显列顺序不同(并且有一个固定的方法)。没有区别。

也就是说,sys.columns.column_id订单与磁盘订单不匹配