Как я могу написать запрос на уведомление из приложения в базу данных?

Это мой извечный вопрос. о том, как передавать данные из базы данных вместо данных извлечения приложения.

Пройдя по ссылке и документам, я узнаю, что Мне нужно написать запрос на стороне приложения для запроса уведомления, тогда БД зарегистрирует мой запрос в подписке, и если в БД есть какие-либо изменения, он проверит подписку, если запрос есть, он отправит сообщение клиенту.

Этот абзац взят из вышеупомянутой ссылки

Along with the query submitted for the notification, the client submits a service name
and a broker instance. Each notification subscription begins a Service Broker dialog 
with this provided service and broker instance. When data is changed and the change 
would affect the result of the submitted query result, a message is sent on this   
dialog. By sending this message, the client is considered notified and the notification 
subscription is removed. If client desires to be notified on further changes, is  
supposed to subscribe again.

Теперь я не знаю, как написать запрос на стороне приложения для запроса уведомления, и я не понимаю submit a service and a broker instance из приведенного выше параграфа. Я предполагаю, что экземпляр службы и брокера необходимо создать в приложении, прежде чем запрашивать базу данных для запроса уведомления. Если это так, как создать службу и экземпляр брокера?

Я могу проверить сервер БД на подписку командой select * from sys.dm_qn_subscriptions. Может кто-нибудь помочь мне?


person niren    schedule 21.06.2013    source источник


Ответы (1)


Возможно, вы не совсем поняли ответ на свой предыдущий вопрос, поэтому я попытаюсь прояснить некоторые вещи:

Я предполагаю, что экземпляр службы и брокера необходимо создать в приложении, прежде чем запрашивать базу данных для запроса уведомления. Если это так, как создать службу и экземпляр брокера?

Service Broker — это компонент SQL Server, вы не создаете экземпляр и не создаете его. Вы включаете его - это задача администратора SQL Server.

Чтобы создать новую службу, вы должны сначала создать для нее очередь, а контракт для связи. Затем вы создаете свою службу.

Когда вы создаете свою службу, экземпляры, активация и другие связанные операции обрабатываются Service Broker.

person OzrenTkalcecKrznaric    schedule 30.06.2013