寻找SQL Server变化的最佳方法?

时间:2013-04-29 08:25:40

标签: sql sql-server sql-server-2008 service-broker

在SQL Server 2008实例上查找表中的更改的“最佳”方法是什么? 我们有一个外部应用程序,用户希望在发生变化时“得到通知”......

今天我们使用触发器,但性能不是最好的。

我将SqlDependency(Service Broker)与.NET(C#应用程序......)结合使用更快。或者还有其他可能吗?

提前致谢, 弗兰克

2 个答案:

答案 0 :(得分:1)

考虑使用Change Tracking

  

变更跟踪是一种轻量级解决方案,可为应用程序提供高效的变更跟踪机制。通常,为了使应用程序能够查询数据库中数据的更改并访问与更改相关的信息,应用程序开发人员必须实现自定义更改跟踪机制。创建这些机制通常涉及大量工作,并且经常涉及使用触发器,时间戳列,新表来存储跟踪信息和自定义清理过程的组合。

     

同步更改跟踪总是会有一些开销。但是,使用更改跟踪有助于最大限度地减少开销。开销通常低于使用替代解决方案的开销,尤其是需要使用触发器的解决方案。

答案 1 :(得分:0)

如果您要更改策略以使用存储过程来更改数据,您的存储过程可以发送更改通知以及更新数据。

更改通知可以在f.ex.实施。作为另一张桌子,由您的应用程序观看。