2009-11-18 70 views
0

是否有可能在SQL Server 2005中创建非聚集索引,这些索引在数据更改(插入/删除/ udpate)时未更新,因此我可以确保报告一组稳定的数据?静态SQL Server索引

我们的数据经常发生变化,我希望能够在某一点无法显示最新更改日期/时间并仅基于此选择数据。在我进行分析之前,我可以更新它们并从这一点开始使用它们。

回答

2

我不认为你可以告诉索引保持陈旧。单独的报告表将是更合适的解决方案。

例如,您可以加载快照到像一个新的报告表:

truncate table BigTableSnapshot 

select * 
from BigTable 
into BigTableSnapshot 

另外,SQL Server企业版可以让你把整个数据库的snapshots。这对报告非常有用,尽管它确实对性能有影响。

+0

它不是想象中的那么我一直在寻找解决方案,但我认为,它可以在SQL Server中得到最好的。谢谢。 – Penfold 2009-12-04 10:25:12

1

如果您拥有企业版SQL2005,则可以对整个数据库进行快照,为您提供一个只读/静态时间点数据库副本以进行报告。

http://msdn.microsoft.com/en-us/library/ms175158.aspx

+0

对不起Andomar,我没有看到你回答正确,并看到你已经指出了这一点。 – SuperCoolMoss 2009-11-18 12:13:10

+0

@SuperCoolMoss:可以发布多个答案!选民可以决定哪一个更好地解释它 – Andomar 2009-11-18 14:22:05