Триггер базы данных, который связывается с внешней программой - PullRequest
2 голосов
/ 26 ноября 2008

У меня есть база данных SQLServer и приложение (.NET), которое настраивает данные в этой базе данных. С другой стороны, у меня есть приложение (VC ++), которое считывает эти данные из базы данных и должно быть как можно скорее «проинформировано» о любых изменениях данных, сохраненных в базе данных.

Я хотел бы получить сигнал от механизма базы данных, когда некоторые данные были изменены первым приложением. Конечно, я могу кодировать какое-то сообщение, которое связывает оба приложения, но мой вопрос в том, существует ли этот механизм (своего рода ультра-триггер, который предупреждает другое приложение) в SQLServer или в любом API для доступа к SQLServer (Native, OLE DB, или даже ODBC)

PS: извиняюсь за мой английский

Ответы [ 2 ]

2 голосов
/ 26 ноября 2008

Если ваши требования включают гарантированную доставку (например, отсутствие потерянных событий) - возможно, вы захотите рассмотреть стратегию на основе MSMQ.

Доступ к MSMQ из Microsoft SQL Server

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

Статья базы знаний службы поддержки Microsoft: 555070 Отправка сообщения в MSMQ из SQL Server

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

1 голос
/ 26 ноября 2008

Вы можете использовать задание агента SQL, которое уведомит другое приложение, запустив его с sp_start_job. Проверьте это .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...