Link Search Menu Expand Document

GET_CHANGES

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

Журнал ведется в системе, начиная с версии 5.3. Изменения, выполненные в более ранних версиях, в журнале отсутствуют.
Для логических базы данных, которые создавались и изменялись только до версии 5.3, запрос GET_CHANGES возвращает пустой объект ResultSet`.

По каждой операции доступна следующая информация:

  • change_num — номер операции. Нумерация ведется в рамках логической базы данных;
  • entity_name — имя логической сущности;
  • change_query — содержимое запроса на изменение логической сущности;
  • start_time — дата и время начала выполнения запроса change_query;
  • end_time — дата и время окончания выполнения запроса change_query. Если поле пустое, это означает, что операция еще не завершена;
  • delta_num — последняя закрытая дельта в логической базе данных на момент запроса информации. Если закрытых дельт еще нет, поле имеет пустое значение.

Успешный ответ содержит объект ResultSet, где каждая строка соответствует одной операции, неуспешный ответ содержит исключение.

Незавершенную операцию (с пустым полем end_time) можно отменить запросом ERASE_CHANGE_OPERATION.

Синтаксис

GET_CHANGES([db_name])

Параметры:

db_name

Имя логической базы данных, для которой запрашивается журнал. Опционально, если выбрана логическая БД, используемая по умолчанию.

Примеры

Запрос журнала для указанной логической базы данных:

GET_CHANGES(marketing)

Запрос журнала для логической базы данных, выбранной по умолчанию:

-- выбор логической базы данных marketing в качестве базы данных по умолчанию
USE marketing;

-- запрос журнала для marketing
GET_CHANGES();

На рисунке ниже показан пример ответа на запрос GET_CHANGES. Ответ содержит информацию о пяти созданных таблицах: первая была создана до всех дельт, вторая — после нулевой дельты, остальные — после первой дельты.

Ответ GET_CHANGES