我需要你的智慧。我正在对从经典 asp 到 mvc 的系统进行大修,并且在此过程中,我正在重构 sql server 2008 r2 中的一个主表(称为 MAIN)。该表有一百多列(我对此不负责),我将结构移动到 7 个表以提高性能、灵活性和可维护性。但是,新旧代码在许多新旧页面中都引用了 MAIN 表。我想平稳而渐进地过渡到新表,它是业务的一个活跃的核心站点。请帮帮我。
一旦我转移了现有数据,
我想过:
1.) 在主表和七个新表上使用标准插入、更新和删除触发器。对于无限触发循环,我必须包含一个 catch (http://stackoverflow.com/questions/2237499/sql-server-trigger-loop)。
2.) 创建一个模拟主表的视图,引用新表。我会在视图上使用 INSTEAD OF 触发器来通过视图插入和更新表。这将允许我立即删除 MAIN 表。
其中哪个更有意义?要么是极其愚蠢的吗?两个都?我绝对不是 dba,但我需要在第一时间做到这一点。
谢谢你。