Site icon Embarcadero RAD Studio, Delphi, & C++Builder Blogs

Отслеживание изменений с помощью InterBase Change Views

trackingchangesblog

Возможность отслеживать изменения в вашей базе данных может быть трудоемким и утомительным процессом, который в определенных обстоятельствах может повлиять на производительность вашей базы данных и ваших пользователей. InterBase предлагает простое в реализации решение для отслеживания этих изменений.

Что такое представления изменений?

Представления изменений — это запатентованная модель подписки, используемая для подписки на данные и определения того, какие данные были изменены в базе данных.

Вы создаете подписку, охватывающую различные таблицы и столбцы, и даете пользователям право подписаться на изменения в данных. Здесь нет таблиц журналов или внешних файлов, поэтому это очень чистая настройка, которая отслеживает внутреннее, а это означает, что ваши изменения в безопасности внутри вашей базы данных, а не в файлах, к которым любой может получить доступ.

Только пользователи, которые подписаны на эти изменения данных, могут фактически видеть изменения, доступные им / для них.

Подписки могут выполняться как во время соединения, так и в рамках соединения. Таким образом, во время подключения вы можете получить предупреждение, а затем просто получить дельты. Поэтому, если вы должны были получить несколько тысяч записей, а затем получить сообщение «В таблице были изменения», вы можете использовать представления изменений для получения дельты вместо повторного обновления всего запроса. Сокращение времени и перемещения данных по вашей сети.

Что касается охвата соединения, действительно здорово то, что вам на самом деле не нужно подключаться, чтобы оно записывало изменения. После запуска транзакции базы данных вы можете установить подписку, затем отключиться от базы данных, а затем начать новое соединение с новой транзакцией в будущем.

Когда вы вносите изменения в свои данные, вы получаете эти данные всякий раз, когда применяете обновления. Используя представления изменений InterBases, теперь вы можете конкретно определить, какие дельты изменили уровень поля, поэтому вам нужно только упаковать и переместить данные, которые изменились. Некоторые из преимуществ использования представлений изменений:

При синхронизации изменений представлений перемещаются только изменения между локальной и серверной базами данных, сохраняя данные точными и актуальными!

Как настроить просмотр изменений

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

Сервер

Образец для СОЗДАНИЯ ПОДПИСКИ
[crayon-673fb920aeb15874085347/]

Клиент

После того, как подписки настроены на сервере, вы можете добавлять / активировать их в своих приложениях.

  1. Запустите транзакцию в режиме изоляции SnapShot.
  2. Сделайте свою подписку активной, используя запрос для выполнения установленной подписки, активной на True
  3. Запустите оператор select, чтобы получить дельты. Это может быть простой оператор выбора.
  4. После того, как вы получили свои дельты, зафиксируйте транзакцию, чтобы обновить просмотры изменений в приложении.

Ресурсы

Документация по изменениям представлений: https://docwiki.embarcadero.com/InterBase/2020/en/Getting_Started_with_Change_Views

Уведомления об изменении данных FireDAC : docwiki.embarcadero.com/RADStudio/Sydney/en/Data_Change_Notifications_(FireDAC)#Data_Change_Notifications_for_Specific_DBMS

InterBase: https://docwiki.embarcadero.com/InterBase/2020/en/Main_Page

Exit mobile version