У меня есть база данных MSSQL, которая хранит изображения в столбце BLOB, и нашла способ экспортировать их на диск, используя шаг динамического SQL.
Сначала выберите только столбцы, необходимые для построения имени файла и оператора SQL (идентификатор, имя пользователя, дата записи и т. Д.). Затем я использую шаг Modified Javascript Value
для создания выходного имени файла (без расширения файла):
outputPath = '/var/output/';
var filename = outputPath + username + '_' + record_date;
// --> '/var/output/joe_20181121'
и оператор динамического SQL:
var blob_query = "SELECT blob_column FROM dbo.table WHERE id = '" + id + "'";
Затем, после использования select, чтобы уменьшить количество полей до имени файла и blob_query, я использую шаг Dynamic SQL row
(с выбранным «Outer Join»), чтобы получить BLOB-объект из базы данных.
Последний шаг - вывод в файл с использованием шага Text file output
. Это позволяет вам указать имя файла из поля и дать ему расширение файла для добавления. На вкладке «Содержимое» все поля не отмечены, «Формат» - это термин «без новой строки», а «Сжатие» - «Нет». Единственное экспортируемое поле - это blob_column, возвращаемый из шага динамического SQL, и тип должен быть «двоичным».
Очевидно, что это НАМНОГО медленнее, чем другие операции с таблицами / SQL, из-за шага динамического SQL, выполняющего отдельные подключения к базе данных для каждой строки ... , но это работает.
Удачи!