数据库快照SQL Server 2000

时间:2011-01-26 14:20:37

标签: sql-server sql-server-2000

我们有一个大型数据库,每年接收数十万人的记录。出于多种原因,当信息输入特定人员的系统时,我不会进入,通常情况是输入数据的个人将无法验证此人是否已经在数据库中。由于法律要求,我们必须努力为我们的数据库中的每个人提供一个唯一的标识符(并且没有个人应该有两个或更多。)由于数据收集问题,通常情况下,一个人将被分配许多不同的唯一标识符。

我们有各种自动和手动流程,主要是按照既定的时间表清理数据库,并为分配了多个数据的人合并唯一的标识符。

在我们遇到问题的地方,法律要求我们在年底生成报告。我们总是会产生一套年终报告,但每年都会有决策者要求提供数十份临时报告。事情变得麻烦的原因是由于唯一标识符的不断合并,我们的数据并不是静态的。因此,年末生成的任何报告都将基于一年中最后一天存在的数据,如果决策者要求提交报告,则为3周后,无论我们提供什么,他们都可以(并且将)经常与法律要求发生冲突年终报告。有时我们会在一个月内合并多达30,000个标识符,这可能会大大改变任何查询的结果。

我们的数据库不是静态的,但我们被要求提出一种基于数据库静态快照生成临时报告的方法。因此,如果在1/25上请求报告,它将基于与年终报告完全相同的数据集。

在做了一些研究之后我对数据库快照很熟悉,但是我们有一个SQL Server 2000数据库,我们几乎没有能力在短期到中期内改变它,数据库快照是2005年的新功能版。所以我的问题是在SQL Server 2000中创建数据库的可查询快照的最佳方法是什么?

2 个答案:

答案 0 :(得分:2)

您可以简单地在12/31上备份数据库并以其他名称恢复吗?

答案 1 :(得分:0)

您需要拍摄快照并对其进行处理(对于另一个数据库或基于文件的外部系统,如Access或Excel),或者,如果存储了足够的日期信息,请使用日期值从您的实时副本进行处理以前报道的新数据。

您最好不要使用快照,因为日期方法并不总是有效。理想情况下,您可以在年底的某个地方(任何地方,实际上)导出您的实时数据库。