Перескриптование может помочь в ряде случаев:
- Когда в какой-то момент разработки базы данных выясняется что база данных не проходит b/r (backup/restore — сохранение с последующим восстановлением из резервной копии) и выяснить, почему это произошло не удается.
- Чтобы переименовать таблицу (таблицы) и ее поля в структуре базы.
- При переносе на принципиально иную версию сервера Firebird/Interbase.
Перескриптование легко выполнить в программе IBExpert. Для начала подключитесь к базе данных, которую необходимо перескриптовать. В примере база данных называется kompleks_work.
Затем зайдите в пункт меню Инструменты | Извлечение метаданных (если в программе IBExpert англоязычный интерфейс, его можно заменить на русскоязычный в Options | Environment Options, в опции Interface Language). В появившемся окне укажите, что выгружать будете в файл (File), путь к файлу скрипта (в примере c:\333\kompleks_work.sql) и поставьте флажок у опции «Извлечь все».
Перейдите на закладку «Таблицы данных», перенесите все таблицы вправок с помощью специальной кнопки.
На закладке «Опции» включите все опции как показано на рисунке. Остальные опции выключите. Нажмите кнопку запуска для выгрузки базы данных в скрипт.
После завершения выгрузки будет выведено сообщение:
«Извлечение метаданных успешно завершено! Размер результирующего файла (путь к файлу) — столько-то байт. Загрузить полученный файл в редактор?»
ответьте «Да».
После загрузки файла в редактор удалите (а лучше переименуйте) исходный файл базы данных и нажмите кнопку запуска скрипта для загрузки его в новую базу данных.
После того, как файл выполнится, процедура перескриптования будет закончена.
Если в процессе перескриптования возникли ошибки, то чаще всего они вызваны некорректной обработкой зависимостей базы данных при ее выгрузке программой IBExpert. Чтобы устранить их, достаточно скопировать все команды, выполненные с ошибками в буфер обмена и выполнить их повторно. Для этого выберите соответствующий пункт контекстного меню (см. рисунок), откройте отдельный редактор скриптов (или очистите этот), вставьте из буфера обмена скопированные команды, подключитесь к уже созданной новой базе данных и выполните их повторно. Если все равно останутся ошибки, с ними надо разбираться индивидуально.
|