Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 события при операциях с данными в SQL Server 2000 в .NET ?  [new]
denis_russ13
Member

Откуда:
Сообщений: 8
Не подскажете, как можно (если можно) обработать события по изменению данных (записей в табличках) на клиентской машине, дабы на каждого соединения поддерживать текущую копию данных? Пробовал следить за событием CommandSent объекта SQLServer2Class (SQLDMO), но оно не срабатывает.
Заранее спасибо.
10 ноя 04, 11:24    [1093751]     Ответить | Цитировать Сообщить модератору
 Re: события при операциях с данными в SQL Server 2000 в .NET ?  [new]
_bob
Member

Откуда: Москва
Сообщений: 1654
Была похожая задачка, сделали службу, которая мониторит базу на предмет изменений (изменение заполняет триггером табличку, в которой значилось имя_таблицы, время_посл_обновления), после появления записей в этой табличке, всем клиентам идет сигнал какую таблицу обновили и когда, а клиенты уже разбираются, есть ли у них табличка эта на гриде и надо ли грид рефрешить.
Решение некрасивое, но работало надежно.
Потом из этой службы сделали полноценный средний уровень, так что сервер вообще отдыхает, убрали триггеры и весь мониторинг, средний уровень сам управляет изменениями, сам же велит клиентам обновляться.
10 ноя 04, 11:44    [1093871]     Ответить | Цитировать Сообщить модератору
 Re: события при операциях с данными в SQL Server 2000 в .NET ?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Что вы понимаете под события по изменению данных ? Если это сам факт изменения данных на сервере, причем без привязки к конкретной сессии, то нет у SQL Server таких событий. Кроме того, событие CommandSent вызывается при отправки любой команды (бача) к приконнекченному серверу. Но это совсем не означает, что эта команда может изменить данные.
10 ноя 04, 11:46    [1093885]     Ответить | Цитировать Сообщить модератору
 Re: события при операциях с данными в SQL Server 2000 в .NET ?  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
https://www.sql.ru/articles/mssql/02040201AlertServiceForSQLserv.shtml
10 ноя 04, 11:48    [1093898]     Ответить | Цитировать Сообщить модератору
 Re: события при операциях с данными в SQL Server 2000 в .NET ?  [new]
denis_russ13
Member

Откуда:
Сообщений: 8
to Гавриленко Сергей Алексеевич:
Спасибо за красивое решение. Насколько я понимаю, предполагается, что "рассылка уведомлений" производится путем вызова хранимой процедуры spRaiseEvent для каждого клиента (toAddr) в триггере?

to pkarklin:
> Что вы понимаете под события по изменению данных ?
Да, факт изменения данных на сервере, в контексте задачи поддержания реальных (тех, что имеются в настоящий момент на сервере) данных у каждого подключенного клиента.
> причем без привязки к конкретной сессии
Т.е. некий механизм, предоставляющий такие события для конкретной сессии есть?
10 ноя 04, 15:27    [1095249]     Ответить | Цитировать Сообщить модератору
 Re: события при операциях с данными в SQL Server 2000 в .NET ?  [new]
Glory
Member

Откуда:
Сообщений: 104760
Т.е. некий механизм, предоставляющий такие события для конкретной сессии есть?
Нет.
10 ноя 04, 15:40    [1095334]     Ответить | Цитировать Сообщить модератору
 Re: события при операциях с данными в SQL Server 2000 в .NET ?  [new]
Даутов
Member

Откуда: Казань
Сообщений: 502
Подождите ADO.NET 2.0 и SQL Server 2005 - там есть, то что Вам нужно
10 ноя 04, 15:46    [1095369]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить