Пакеты служб SSIS (SQL 2005), в которых есть задача сценария, вызывающая пользовательские библиотеки .NET, выдают следующую ошибку при запуске в 64-разрядной среде
Задача не может быть выполнена в 64-разрядной среде, поскольку сценарий предварительно не скомпилирован. Пожалуйста, включите опцию предварительной компиляции скрипта в редакторе задач.
Задачам сценария присвоено значение PreCompile = false, поскольку указанная dll генерируется процессом сборки.
Предлагаемый обходной путь:
Вариант 1. Если precompiled = True, откройте, сохраните и закройте пакет в BIDS после завершения сборки
, Это перекомпилирует ссылку и сгенерирует встроенный 64-битный двоичный файл в пакете служб SSIS и приведет к исчезновению вышеупомянутой ошибки. Однако это также означает, что кто-то должен вручную открывать пакеты служб SSIS после завершения сборки.
Вариант 2. Придерживайтесь 32-битного режима.
Вариант 1 возможен, но нецелесообразен. С 200 пакетами SSIS - у нас не хватает рук для выполнения этой задачи каждый раз, когда мы генерируем сборку.
Вариант 2 исключен, потому что 32-битная версия не подходит для нас.
Теперь вопросы:
1. У вас есть процесс сборки ваших пакетов служб SSIS? Если да, можете ли вы поделиться своими практиками
2. Как вы управляете сценариями? Комфортно ли вам включать версию dll для разработчика в ваши сценарии?