CHECK_TABLE
Содержание раздела
Поддерживается в версиях: 6.9 / 6.8 / 6.7 / 6.6 / 6.5 / 6.4 / 6.3 / 6.2 / 6.1 / 6.0 / 5.8 / 5.7 / 5.6 / 5.5 / 5.4 / 5.3 / 5.2 / 5.1 / 5.0.
Запрос проверяет соответствие логической и физической структуры для указанной таблицы логической базы данных.
Примеры ответов см. ниже в секциях Ответ при успешной проверке и Ответ при наличии расхождений.
Поддерживаемые сущности
Запрос позволяет проверить таблицу следующего типа:
Как работает запрос
Проверяется соответствие следующих элементов:
- имен столбцов,
- типов данных столбцов,
- первичного ключа.
При проверке столбцов система проверяет соответствие столбцов на логическом и физическом уровнях, а также наличие всех необходимых служебных столбцов, которые есть только на физическом уровне. При любом таком несоответствии — например, при отсутствии служебного столбца sys_to
в физической таблице, связанной с логической таблицей, — в ответе возвращается сообщение о расхождении.
Соответствие проверяется в тех датасорсах, где размещены данные таблицы. Другие датасорсы пропускаются при проверке.
Синтаксис
CHECK_TABLE([db_name.]table_name)
Параметры:
db_name
-
Имя логической базы данных, которой принадлежит проверяемая таблица. Опционально, если выбрана логическая БД, используемая по умолчанию.
table_name
-
Имя проверяемой таблицы: логической таблицы или прокси-таблицы.
Примеры
Проверка логической таблицы sales
:
CHECK_TABLE(marketing.sales)
Проверка прокси-таблицы payments_proxy
:
CHECK_TABLE(marketing.payments_proxy)
Варианты ответа
В ответе возвращается:
- объект ResultSet с одной записью, содержащей результаты проверки, при успешном выполнении запроса;
- исключение при неуспешном выполнении запроса.
Результаты, возвращаемые в ответе, включают сообщение об успешной проверке или найденных расхождениях, а также список проверенных датасорсов.
Ответ при успешной проверке
На рисунках ниже показаны примеры ответов в случае успешной проверки: на первом рисунке — по логической таблице, данные которой размещены в четырех датасорсах, на втором — по таблице, данные которой размещены только в adb
.
Ответ при наличии расхождений
На рисунке ниже показан пример ответа при наличии расхождений, которые вызваны тем, что в физической таблице датасорса adb
отсутствует столбец description
.
На рисунке ниже показан пример ответа при наличии расхождений, которые вызваны тем, что логическая таблица была создана только на логическом уровне. Подробнее о создании и пересоздании логической таблицы на логическом уровне см. в разделе CREATE TABLE.