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