sql工具/选项阻止保存更改

时间:2011-01-21 15:21:49

标签: sql-server

使用“防止保存需要表重新创建的更改”选项时可能出现的副作用。具体来说,只需在表格中添加一个新字段即可。

谢谢,

杆。

3 个答案:

答案 0 :(得分:1)

您指的是SSMS。默认情况下,您无法保存涉及表重新创建的架构更改。每当我安装SSMS时,我立即关闭此选项。

某些架构更改需要创建临时表,将原始表中的数据复制到其中,创建新表,使用新架构,然后将临时表中的数据复制到新表中。然后删除临时表。选择此选项后,SSMS中不允许任何需要此过程的架构更改。

IMO,关闭此功能没有任何缺点,只要您知道某些架构更改需要这样做,并且对于具有大量行的表,操作可能需要很长时间。

答案 1 :(得分:0)

只需将新列添加到表中即可,只要您接受新列将“显示”在表的“结尾”。

当人们想要将新列放在出现问题的列列表中的特定位置时,因为没有这样的实际命令允许在SQL中发生这种情况;所以SSMS必须通过创建一个新表,复制数据,删除旧表和重命名新表来伪造它。所有这些步骤都需要时间,在此期间,任何人都不能安全地尝试访问此表。

答案 2 :(得分:0)

达米恩是对的,只是添加一列不会产生任何副作用。 这可以使用T-SQL轻松完成,因为这是在使用T-SQL时无需重新创建表的操作之一。其他行动是:

  • 修改现有列的NULL设置
  • 使用RESEED作为列
  • 更改现有列的数据类型
相关问题