在我们的SQL Server DB中,我们有大约800多个表,并且有40-50个表是业务关键表。 MIS团队需要根据这50个业务表生成报告。
这50个表经常更新。 MIS团队需要这些增量记录(更新/插入/删除)
什么是最好的解决方案?
我们这里的工作很少 1.Always On 2.Replication 3.Mirroring 4.在这50个表中引入新列(LastModifiedDate&创建索引)并定期提取这些记录并将其填充到MIS环境中。
新列LastModifiedDate方法会有巨大的代码更改。
基于这50个表,我们有大量的存储过程,它具有插入/更新
语句。在那些存储过程中,我们需要为LastModifiedDate进行代码更改。
上述方法中最好的解决方案是什么?
如果有任何其他方法,请告诉我们。注意:我们使用的是SQL Server 2008 R2
关心Karthik
答案 0 :(得分:0)
一种方法是在这些表上具有插入,更新和删除触发器,并且对于每个表,具有完全相同列的存档表加上例如用户名,modifieddatetime和一点来表示新旧。然后触发器只是插入存档选择插入/删除+当前用户,当前时间和1表示已插入,0表示已删除。
然后您的所有MIS需要关注的是归档表,您不需要对现有表进行结构更改。