我有一个单表数据库,我继承并迁移到SQL Server,然后通过创建,链接和填充表示主表中项目的一大堆查找类型表来规范化它。我现在想用他们的外键替换原始表中的那些项目。我是不是写了一堆查询或UDF,然后是一个巨大的INSERT声明来完成这个,或者是否有一个工具可以用来指出各个领域并让它为我处理那些笨拙的工作?
答案 0 :(得分:2)
Redgate SQL Refactor有一个为期14天的评估期,并且有一个“拆分表”重构,听起来它可能会满足您的需求吗?
因此描述了该功能:
拆分表将表拆分为两个 表,并自动重写 引用存储过程,视图, 等等。 您也可以使用此功能 重构引入参考 完整性表。你可以选择这个 来自上下文菜单的功能 Management Studio的对象资源管理器。
答案 1 :(得分:1)
我有类似的经历。我曾经继承过一个相当庞大的数据库,需要对模式进行严格的改革才能看到它而不用鄙视。
由于升级非常重要,我设计了一个SSIS包来将数据从旧架构迁移到新架构。查找活动有助于将旧文本值映射到新键。我保留了一个旧模式和数据的脚本,并且会在沙箱中重复恢复数据库并重新迁移,直到我能够满足迁移可靠的功能。
我发现开始使用SSIS只有适度的学习曲线。如果您可以使用该工具,我建议您尝试一下。