Сначала создайте связанный сервер с рабочим листом Excel
declare @server varchar(100),@dropLogins varchar(20)
select @server='myExcelBook',@dropLogins='droplogins'
Exec sp_dropServer @server,@droplogins=@dropLogins
EXEC sp_addlinkedserver @server,
'ACE 12.0',
'Microsoft.ACE.OLEDB.12.0',
'c:\MyExcelBooks\myExcelBool.xls',
NULL,
'Excel 12.0'
exec sp_linkedServers
ACE 12.0, Excel 12.0 и Microsoft.ACE.Oledb.12.0 являются именами поставщиков для Excel 2007
Если у вас другая версия Excel, вы должны заменить эти литералы правильными.
Также необходимо, чтобы Excel был установлен на вашем сервере базы данных.
Как только вы сделали выше ...
Вы можете рассматривать каждый лист в Рабочей книге как Таблицу
поэтому вставка данных в SomeTable выглядит следующим образом
Insert SomeTable(column1,Column2,Column3)
Select Column1,Column2+Column3,Column3 from myExcelbook..Sheet1$
Обратите внимание, что знак $ должен быть добавлен к листу, который вы обновляете.
После добавления сервера ссылок вы можете увидеть рабочие таблицы / и диапазоны в разделе Объекты сервера / LinkedServers / myExcelBook / Каталоги / Defautlt / Таблицы