CHECK_DATABASE
Запрос позволяет проверить соответствие логических таблиц логической базы данных и их физических представлений — физических таблиц в хранилище данных.
В проверке участвуют логические таблицы логической базы данных и все связанные с ними физические таблицы. Если СУБД хранилища не хранит данные логической таблицы, и, следовательно, не содержит связанные физические таблицы, она пропускается при проверке логической таблицы.
Проверяется соответствие следующих элементов:
- имен столбцов,
- типов данных столбцов,
- первичного ключа.
Имена проверяются для всех столбцов логических и физических таблиц, включая служебные столбцы, имеющиеся только у физических таблиц. Например, если служебный столбец sys_to
удален из физической таблицы, в ответе вернется сообщение о расхождении.
В ответе возвращается:
- объект ResultSet с одной записью, содержащей результаты проверки, при успешном выполнении запроса;
- исключение при неуспешном выполнении запроса.
Возвращаемая информация включает сообщение об успешной проверке или найденных расхождениях, а также список проверенных СУБД хранилища. Примеры запросов и ответов см. в секции Примеры.
Синтаксис
Проверка логической базы данных, выбранной по умолчанию:
CHECK_DATABASE()
Проверка указанной логической базы данных:
CHECK_DATABASE(db_name)
Параметры:
db_name
-
Имя логической базы данных, для таблиц которой выполняется проверка.
Примеры
Проверка логической базы данных marketing
:
CHECK_DATABASE(marketing)
На рисунках ниже показаны примеры ответов: на первом — ответ при отсутствии расхождений, на втором — при наличии расхождений. Расхождения вызваны тем, что таблица sales_logical
создана только на логическом уровне.