刷新具有索引和约束的表

时间:2012-10-17 18:35:13

标签: ssis sql-server-2008-r2 constraints database-indexes

我有以下场景,我需要在SQL Server 2008 R2中重新加载一个表,其中数据位于另一台服务器上。目标表具有索引(聚簇和非聚簇)和约束(多个表的外键),而主键也是另一个单独表的外键。目标表上的主键也是标识。

在接近这种情况时,我会说“最佳做法”是什么?

以下是否合理:

  • 删除目标表上的索引 - (SQL脚本任务)
    • 首先删除非聚集索引
    • 其次,删除聚集索引
  • 从源表到目标表的DataFlow点。
    • 在目标编辑器中,选中保持身份,保留空值,然后取消选中检查约束
  • 在目标表上创建索引 - (SQL脚本任务)

请注意,源表和目标表中的表结构和约束应该是相同的。换句话说,同样的一切只是从QA重新加载数据到开发。

1 个答案:

答案 0 :(得分:1)

看起来不错但Don't drop clustered index如果你想要你可以禁用所有外键约束,加载后如果你的数据不是关系一致就可以启用NOCHECK