SQL Server 2008:无法在中间位置插入新列并更改数据类型

vir*_*boy 5 sql database-design sql-server-2008

我的操作系统是Windows Server 2008.

我已经安装了SQL Server Express 2008.

我有几个问题:

  1. 我无法在中间位置插入新列.如果我插入最后一个,我可以保存表设计.
  2. 我可以更改列名,但我无法更改数据类型.

我收到错误消息:不允许保存更改.您所做的更改需要删除并重新创建以下表.您已对无法重新创建的表进行了更改,或者启用了"禁止保存更改"选项,该更改需要重新创建表.

例:

我有ID, Name, Phone,Status专栏.我无法AddressName和之间添加Phone.

但是,Address如果我把它放在后面,我可以添加Status.

有什么方法可以解决这个问题吗?

谢谢你.

Mar*_*ith 20

在SSMS工具 - >选项 - >设计器中,您需要取消选中"防止需要重新创建表的保存更改"选项,以允许您在SSMS中执行此操作.

这将重建表格,因此如果表格非常庞大并且将部署到生产更加棘手,那么通常不值得麻烦.

如果存在逻辑上您希望彼此相邻的列以使编写查询更容易,则可以使用所需的列顺序创建视图.


gbn*_*gbn 9

列顺序在设计器或sys.columns中无关紧要.

无论如何,磁盘存储都是相同的:存储引擎内部 - 记录剖析.

没有性能优势.