与外部程序通信的数据库触发器

问题描述:

我有一个SQLServer数据库和一个在该数据库上配置数据的应用程序(.NET)。另一方面,我有一个从数据库读取数据的应用程序(VC++),必须尽快通知数据库中保存的数据有任何变化。与外部程序通信的数据库触发器

当第一个应用程序更改了某些数据时,我想从数据库引擎接收信号。当然,我可以编写某种消息来沟通这两个应用程序,但我的问题是,如果在SQLServer或任何访问SQLServer的API中存在该机制(某种类型的超级触发器会警告其他应用程序)(Native,OLE DB,甚至ODBC)

PS:道歉,我的英语

您可以使用SQL代理作业,将通知其他应用程序与sp_start_job启动它。检查this了。

如果您的要求包括有保证的交付(例如,没有丢失事件) - 您可能需要考虑基于MSMQ的策略。

从Microsoft SQL Server访问MSMQ

http://www.codeproject.com/KB/database/SqlMSMQ.aspx

Microsoft支持知识库文章:从SQL Server 555070 发布消息到MSMQ

http://support.microsoft.com/kb/555070