Использование SQL-скриптов перед и после миграции

В рамках улучшения функциональности инструмента миграции данных добавлены две необязательные опции, которые позволят более гибко управлять процессом импорта данных, автоматизируя выполнение предварительных и последующих операций. Они позволяют указать SQL-скрипты, которые будут выполнены до и после импорта данных. В данной статье подробно описаны новые опции и процесс их настройки.

  • BEFORE_IMPORT_SCRIPT - Путь к SQL-скрипту, который будет выполнен перед началом импорта всех объектов.
  • AFTER_IMPORT_SCRIPT - Путь к SQL-скрипту, который будет выполнен после завершения импорта всех объектов.

Настройка

Для использования новых опций, необходимо добавить соответствующие пути к SQL-скриптам в файл конфигурации (sqlways_db.ini). Примеры настройки:

[COMMON]
BEFORE_IMPORT_SCRIPT = C:\doc\before_sql_file.sql
AFTER_IMPORT_SCRIPT = C:\doc\after_sql_file.sql

Процесс создания bat-файлов

При наличии настроек BEFORE_IMPORT_SCRIPT и/или AFTER_IMPORT_SCRIPT инструмент создаст соответствующие bat-файлы:

  • before_import_script.bat для скрипта, указанного в BEFORE_IMPORT_SCRIPT
  • after_import_script.bat для скрипта, указанного в AFTER_IMPORT_SCRIPT

В bat-файлах будут выполнены SQL-скрипты, указанные в настройках. Для корректного выполнения скриптов, bat-файлы будут поддерживать пути с пробелами и любые пользовательские кодировки.

Примеры содержания bat-файлов:

  • before_import_script.bat:
    @echo off
    sqlcmd -S <ServerName> -d <DatabaseName> -i "C:\doc\before_sql_file.sql"
  • after_import_script.bat:
    @echo off
    sqlcmd -S <ServerName> -d <DatabaseName> -i "C:\doc\after_sql_file.sql"

    Обработка ошибок

    Если в процессе выполнения скриптов возникают ошибки, они будут отображены в журнале импорта так же, как и для любых других объектов. Это позволяет легко отслеживать и диагностировать проблемы, которые могут возникнуть при выполнении скриптов.

Обратите внимание, если опции BEFORE_IMPORT_SCRIPT или AFTER_IMPORT_SCRIPT отсутствуют или их значения пусты, соответствующие bat-файлы создаваться не будут.

Также опции независимы друг от друга: если одна из опций отсутствует, bat-файл для неё создаваться не будет, но для присутствующей опции bat-файл будет создан.


Другие материалы по теме:
Описание разделов файла sqlways.ini
Советы и рекомендации

Если у вас есть вопросы, пожалуйста, обращайтесь в нашу службу поддержки: support@convertum.ru