2

如果我想varchar在 SQL Server Management Studio 中将列的长度从 30 个字符扩展到 60 个字符,我必须取消选中该框Prevent saving changes that require table re-creation

重新创建此表是否有任何副作用?我会重置身份或增加种子、松散索引或发现任何其他不需要的影响吗?

我需要在实时数据库上执行此操作,并且我不想找出发生变化的艰难方式。

4

2 回答 2

1

这是仅元数据的更改,不需要重建表。

ALTER TABLE YourTable ALTER COLUMN YourColumn VARCHAR(60) [NOT] NULL

关于您的问题“通过 GUI 重新创建此表是否有任何副作用”。

在这种情况下,这完全是不必要的开销,并且会阻塞并发用户,直到表被复制和重新创建。此外,设计人员在执行此操作时已知错误(例如,从列中删除FILESTREAM属性)

于 2013-05-14T11:21:46.533 回答
0

以前也有人问过类似的问题。查看以下答案: “防止保存需要重新创建表的更改”负面影响无法更改 SQL Server 2008 中的表设计

祝你好运。//翻转

于 2013-05-14T11:18:38.387 回答