SQL Server 2008重新创建表的方法
创始人
2024-04-10 17:00:45
0

我们讨论的这个警告信息显示如下,当我试着更改AdventureWorks数据库表[GroupName]字段的"Allow Nulls"设置时,下面的警告产生了。

不允许保存更改。你所作的这些更改要求删除并且重新创建下面的表。你只能对表进行不能重新创建的更改或者启用这个选项来防止保存要求对表重新创建的更改。

SQL Server 2008重新创建表

图一

我具有在这张表上执行DDL语句的权限,而在这张表上也没有阻止它重新创建的锁。因此唯一的原因应该是"or enabled the option Prevent Saving changes that require the table to be re-created"的信息部分。

因此让我们看看这个选项,接着看看一些要求重新创建表并且与通过SSMS进行更改有关的潜在威胁类型。

从菜单中选择“工具”然后选择“选项…”

SQL Server 2008重新创建表

图二

点击页面左边的"Designers"

SQL Server 2008重新创建表

图三

上面的标记选项在检查时防止在SSIS中要求重新创建表的任何更改。默认情况下,这个选项是检查的。如果它允许你通过要求对表重新建立的SSMS来做任何改变,那么你可以不检查它。一旦这个选项设为未检查的,那么你讲不能得到一个要求表重新创建的更改以及执行你的更改的警告信息。

要求重新创建表的一些情况是:

修改一个字段的数据类型

在一张表的***一个字段之前在任何一个地方插入一个字段

修改一个计算列的计算列表达式

修改一个计算列的persistence属性

修改一个字段的identity属性

修改一个字段的NULL属性

对表中的字段重新排序

重要的是要了解通过SSMS进行更该会带来一些后果。微软强烈建议不要关闭这个选项。你可能会经历与该表相关的信息缺失甚至在某些情况下会缺失数据。作为信息相关缺失的例子,微软支持提出如果更改跟踪功能可用的话,那么可以使用与表相关的更改跟踪。如果这张表也包含大量的数据,那么重新创建表可能会导致超出操作时间从而无法完成该过程。

同时考虑到微软的建议,您***启用这个选项。但是在某些情况下,禁用这个选项会使你更好地利用SSMS设计器进行工作。这些情况是:你在测试环境中工作。

要求进行一些不能通过T-SQL的操作。例如,在其它字段的中间插入一个新的字段。在这样的案例中,正确分析这些表的任何问题/损失作为重新创建表的结果。

你确定没有相关的数据,例如与你任何一张表有关的更改跟踪数据。

你确定硬件具有足够的空间来避免任何超时的操作。

【编辑推荐】

  1. 在T-SQL中使用临时表的注意事项
  2. SQL Server数据库管理常用的SQL和T-SQL语句(1)
  3. 用T-SQL操作面试SQL Server开发人员(1)
  4. SQL Server 2005中的T-SQL
  5. T-SQL实用例句

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...