Использование OPENROWSET для экспорта набора данных в определенный диапазон на листе Excel

Я хотел бы экспортировать данные с сервера sql в лист Excel. Лист структурирован и содержит более одной таблицы.

Есть ли способ указать диапазон экспорта или он ограничен только листом?

insert into opendatasource(
    'Microsoft.ACE.OLEDB.12.0', 
    'Data Source=Mypath\MyFile.xlsx;Extended Properties=Excel 12.0')...[MySheet$]

И мне нужно указать что-то вроде:

[MySheet$].MySpecificTable or
MySheet$MySpecificTable or
MySheet$I4:M8

скриншот Excel

Не хочу пользоваться мастером экспорта - эту задачу нужно автоматизировать. Я знаю, как это сделать в C #, SSIS или VBA, но я хочу знать, как это сделать с помощью OPENDATASOURCE или OPENROWSET.


person Deadsheep39    schedule 09.01.2017    source источник
comment
Для этого вам нужно использовать C #. Есть ли конкретная причина, по которой вы хотите добиться этого с помощью openrowset?   -  person singhswat    schedule 09.01.2017
comment
Меня только интересует (потому что это должны обрабатывать пользователи без контекста безопасности для доступа к стороне сервера - без развертывания, но с доступом к базам данных сервера sql). В синтаксисе SSIS MySheet $ I4: M8 работает нормально, поэтому я ищу аналогичное решение ..   -  person Deadsheep39    schedule 09.01.2017


Ответы (1)


Нет способа сделать это через opendatasource / openrowset ...

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

person Deadsheep39    schedule 31.05.2017