Можно, но не нужно.
Достаточно с клиента сделать запрос, который вернет тебе "контрольную сумму" для данных. Если сумма изменилась с последнего запроса - значит надо перечитать данные. В качестве "контрольной суммы" могут быть разные комбинации. Например, если у тебя для каждой записи сохраняется время ее последнего обновления, то достаточно просто вернуть max от этого поля (если оно индексированно, то этот запрос вообще мгновенно выполняется). В свое время делал для одной программы такую проверку, которая проверяла кол-во записей и сумму по одному из главных полей.
Преимуществом такой схемы является то, что если у тебя идет фильтрация записей в зависимости от пользователя (права, должность и т.п.), то эту проверку можно будет "завязать" на те же параметры, что и основной запрос. Недостаток - довольно приличное кол-во мелких запросов. Как уже писал, в той системе работало довольно большое кол-во клиентов, сервер был Oracle. Никаких проблем не возникало.
|