SQL和Oracle中数据更改时的通知

时间:2010-03-26 02:13:37

标签: sql oracle ado.net

我正在构建一个系统,我需要在基于.net的应用程序中通知窗口服务,以防数据库表(插入,更新,删除)发生任何变化。我知道这可以通过SQL中的ADO.NET事件来完成。是否有任何可以提供这类通知的Oracle和SQL的通用解决方案。这需要在更新实时发生时发生。

2 个答案:

答案 0 :(得分:5)

SQL Server唯一有效的推送技术是Query Notifications,它适用于非常平台特定的方式,如SqlDependency。 Oracle在Data Change Notifications中具有等价物,这与平台特定相同。由于两种实现之间存在巨大差异,因此两者之间没有共同的层抽象,任何时候都没有任何机会出现。

BTW,改变数据捕获等技术旨在使断开连接的客户端保持同步(即同步框架),它们基本上是复制的,它们不适合数据更改客户端通知。

答案 1 :(得分:2)

SQL Server和Oracle都支持更改数据捕获。

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

http://download.oracle.com/docs/cd/B10501_01/server.920/a96520/cdc.htm

您可以捕获更改并将其传播。

此外,还有第三方产品将在SQL Server和Oracle之间进行复制。