Информация об изменениях

Сообщение Re[2]: SqlDependency не отлавливаются изменения в базе от 07.12.2016 15:17

Изменено 07.12.2016 15:26 dsalodki

Здравствуйте, Михаил Романов, Вы писали:

МР>Здравствуйте, -rsdn-, Вы писали:


R>>Dependency_OnChange вызывается сразу после ExecuteReader и только 1 раз, во время изменений в базе ничего не происходит

МР>Попробуйте сделать тест без использования SignalR — просто проверить, что сам SqlDependency работает
МР>Выражение для отслеживания выглядит, вроде бы правильно.

МР>Поэтому попробуйте посмотреть в логах SQL Server — нет ли там ошибок.


МР>У меня, например, не так давно возникла та же проблема — не приходили уведомления об изменениях.

МР>В логах обнаружилось сообщение
МР>

An exception occurred while enqueueing a message in the target queue. Error: 15404, State: 19. Could not obtain information about Windows NT group/user 'DOMAIN\Mihail_Romanov', error code 0x54b.


МР>Оказалось, что я постоянно работаю с SQL из-под своей учетной записи, и база создается от моего имени (т.е. владельцем базы ставится моя доменная учетная запись — она спроецирована на dbo), а владелец базы нужен для каких-то внутренних телодвижений с очередью событий.

МР>Проблема решилась сменой dbo на sa:
МР>
sp_changedbowner 'sa'


МР>Может и у вас что-то в этом роде.



Было
Service Broker needs to access the master key in the database 'Test'. Error code:32. The master key has to exist and the service master key encryption is required.
сделал так
http://www.sqlcoffee.com/Troubleshooting109.htm

ошибка пропала и больше ничего

кстати да — пробую без SignalR в WinForms по нажатию на кнопку
Re[2]: SqlDependency не отлавливаются изменения в базе
Здравствуйте, Михаил Романов, Вы писали:

МР>Здравствуйте, -rsdn-, Вы писали:


R>>Dependency_OnChange вызывается сразу после ExecuteReader и только 1 раз, во время изменений в базе ничего не происходит

МР>Попробуйте сделать тест без использования SignalR — просто проверить, что сам SqlDependency работает
МР>Выражение для отслеживания выглядит, вроде бы правильно.

МР>Поэтому попробуйте посмотреть в логах SQL Server — нет ли там ошибок.


МР>У меня, например, не так давно возникла та же проблема — не приходили уведомления об изменениях.

МР>В логах обнаружилось сообщение
МР>

An exception occurred while enqueueing a message in the target queue. Error: 15404, State: 19. Could not obtain information about Windows NT group/user 'DOMAIN\Mihail_Romanov', error code 0x54b.


МР>Оказалось, что я постоянно работаю с SQL из-под своей учетной записи, и база создается от моего имени (т.е. владельцем базы ставится моя доменная учетная запись — она спроецирована на dbo), а владелец базы нужен для каких-то внутренних телодвижений с очередью событий.

МР>Проблема решилась сменой dbo на sa:
МР>
sp_changedbowner 'sa'


МР>Может и у вас что-то в этом роде.



Было
Service Broker needs to access the master key in the database 'Test'. Error code:32. The master key has to exist and the service master key encryption is required.
сделал так
http://www.sqlcoffee.com/Troubleshooting109.htm

ошибка в логах пропала, но все по прежнему

кстати да — пробую без SignalR в WinForms по нажатию на кнопку