Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как с помощью T-SQL перебрать все таблицы из XLS-файла?  [new]
Talen
Member

Откуда: Санкт-Петербург
Сообщений: 409
Открываю XLS-файл через OPENDATASOURCE, а в нем куча листов. Как их перечислить?
Если ли что-нибудь подобное в T-SQL, как OpenShema у ADODB?
27 янв 05, 14:09    [1278489]     Ответить | Цитировать Сообщить модератору
 Re: Как с помощью T-SQL перебрать все таблицы из XLS-файла?  [new]
tedy
Member

Откуда:
Сообщений: 83
Например, так:
SELECT f1, f2, f3 FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Excel 8.0;Database=C:\xls\filename.xls', listname$)
и т.д. по остальным листам
27 янв 05, 15:27    [1278957]     Ответить | Цитировать Сообщить модератору
 Re: Как с помощью T-SQL перебрать все таблицы из XLS-файла?  [new]
Talen
Member

Откуда: Санкт-Петербург
Сообщений: 409
tedy
Например, так:
SELECT f1, f2, f3 FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Excel 8.0;Database=C:\xls\filename.xls', listname$)
и т.д. по остальным листам


Мне необходимо заполнить именно переменную listname$
27 янв 05, 16:11    [1279231]     Ответить | Цитировать Сообщить модератору
 Re: Как с помощью T-SQL перебрать все таблицы из XLS-файла?  [new]
Glory
Member

Откуда:
Сообщений: 104760
создать linked server и затем исползовать процедуру sp_tables_ex
27 янв 05, 16:22    [1279282]     Ответить | Цитировать Сообщить модератору
 Re: Как с помощью T-SQL перебрать все таблицы из XLS-файла?  [new]
mmms
Guest
Помогите добавить XLS файл в линкед сервер :(
Не могу разобраться с синтаксисом. Сделал файл в Excel file1.xls, все листы кроме первого удалил, первый лист обозвал table1. Добавляю по скрипту:

EXEC sp_addlinkedserver
     @server='link_server_excel',   /* local SQL name given to the linked server */
     @srvproduct='',                      /* not used */
     @provider='Microsoft.Jet.OLEDB.4.0', /* OLE DB provider */
     @datasrc='MYCOMP',                    /* analysis server name (machine name) */
     @catalog='C:\file1.xls'              /* default catalog/database */

В EM при нажатии на сервер, выдается ошибка 7399 OLE Report...

Заранее спасибо!!!!
27 янв 05, 16:49    [1279468]     Ответить | Цитировать Сообщить модератору
 Re: Как с помощью T-SQL перебрать все таблицы из XLS-файла?  [new]
Glory
Member

Откуда:
Сообщений: 104760
BOL - sp_addlinkedserver - Example F
27 янв 05, 16:52    [1279490]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить