Member 11994263 Ответов: 0

Как преобразовать результаты запроса в файл excel и сохранить файл в виде varbinary в таблице без доступа к локальному пути в SQL


Я хочу преобразовать результаты запроса в файл excel и сохранить этот файл в виде varbinary в таблице. Это можно сделать, обратившись к локальному пути, как показано ниже.

Но возможно ли это без экспорта файла в локальный путь ?

Что я уже пробовал:

Объявите @cmd VARCHAR(8000), @export_directory VARCHAR (300) = 'D:\', @filename VARCHAR (300) = "

Создать таблицу # # temp_data(значение VARCHAR(100))
Вставить # # temp_data
ВЫБЕРИТЕ ПУНКТ "ТЕСТ".

Выберите @filename = 'excelfile. csv'
Выберите @ЦМД = 'БПЗ "выбрать * из ##temp_data" для выражений "#OUTDIR#\#ВЫХОДНОЙ_ФАЙЛ#" -м -с "#сервер#" -к-т "," -т'

Набор @ЦМД = заменить(@КМД, '#ДБ#', ИМЯ_БАЗЫ_ДАННЫХ());
SET @cmd = REPLACE(@cmd, ' #OUTDIR#', @export_directory);
Набор @ЦМД = заменить(@КМД, '#файл#', @именем);
Набор @ЦМД = заменить(@КМД, '#сервер#', @@ИМЯ_СЕРВЕРА);

EXECUTE master..xp_cmdshell @cmd, no_output
ГО

-----------------------------
Создать таблицу ##VarbinaryExample (id int, DocData VARBINARY (MAX))

Вставить в # # VarbinaryExample
Выберите 1, bulkcolumn
Из OPENROWSET (BULK 'D:\excelfile.csv', SINGLE_BLOB) как y
-----------------------------
ГО



Выберите*из # # VarbinaryExample
ГО

0 Ответов