SQL-скрипт для исправления объектов БД
Ключ
-s < файл >
Описание
Задает спецификацию текстового файла, в который утилита должна записывать SQL-операторы для перестройки поврежденных объектов БД. Ключ используется в комбинации с теми ключами утилиты, которые устраняют ошибки в поврежденных объектах БД с помощью SQL-запросов СУБД ЛИНТЕР (а не путем прямого физического изменения поврежденного фрагмента).
Если ключ -s
не задан в контексте соответствующего ключа, утилита выдает только
диагностические сообщения. В этом случае SQL-скрипт для исправления БД может
быть сформирован вручную.
Если путь к файлу не задан, SQL-скрипт создается в каталоге запуска утилиты testdb.
Сгенерированный SQL-скрипт выполняется с помощью утилиты inl (см. документ «СУБД ЛИНТЕР. Командный интерфейс»).
Проверка соответствия значений полей типа DECIMAL и их значений осуществляется
по умолчанию точности и масштабу столбцов. Значения по умолчанию исправляются
ключом -r
, значения полей записи – ключом -s
.
Если при тестировании данных типа DATE задан ключ -s
, они переводятся в NULL при
отсутствии ограничения NOT NULL и в нулевые даты при наличии такого ограничения.
Если при тестировании индексных страниц на допустимость длины для
соответствующего уровня выявлено превышение длины, то запуске с ключом -s
записываются команды перестройки соответствующих индексов.
Пример
Создание SQL-скрипта для удаления дефектной таблицы: 1) в специфицированном каталоге: testdb /usr/linter/db -r -dt -s /usr/linter/test/tab.sql 2) в каталоге по умолчанию (то есть в каталоге запуска testdb): testdb /usr/linter/db -r -dt -s tab.sql 3) Выполнение SQL-скрипта: inl -u SYSTEM/MANAGER8 _/usr/linter/test/tab.sql