SQL Server 2008重新创建表的方法

数据库 SQL Server
本文向您介绍SQL Server 2008重新创建表的方法:包括控制要求重新创建表的更改和要求重新创建表。

我们讨论的这个警告信息显示如下,当我试着更改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实用例句
责任编辑:冰荷 来源: it168
相关推荐

2011-08-30 16:34:51

SQL Server 阻止保存要求重新创建表

2010-09-16 15:36:26

SQL Server2

2010-11-11 09:20:46

SQL Server创

2010-11-10 10:27:58

访问SQL Serve

2010-07-01 14:46:10

SQL Server临

2010-10-19 15:45:32

SQL Server创

2010-11-10 14:35:17

SQL Server创

2010-09-14 11:45:16

Sql Server系

2010-09-16 16:35:31

sql server表

2009-07-02 10:14:15

格式化日期SQL Server

2010-07-06 16:45:39

SQL Server创

2010-11-12 10:31:25

SQL Server游

2010-10-19 16:20:32

SQL SERVER表

2010-10-19 15:54:38

sql server创

2010-09-16 15:20:36

sql server表

2010-11-11 14:36:11

SQL Server系

2011-07-26 17:45:12

SQL Server 定期自动备份

2010-09-02 11:34:51

SQL删除

2010-11-10 14:47:11

SQL Server创

2010-10-20 17:00:51

SQL Server代
点赞
收藏

51CTO技术栈公众号