Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Здравствуйте, пытаюсь импортировать данные в MS SQL из листа Excel.
Вот код:
SELECT * FROM
OpenDataSource ('Microsoft.Jet.OLEDB.4.0','Data Source="c:\test.xls";
User ID=Admin;Password=;
Extended properties=Excel 8.0')...sheet1$
Если на даном листе одна таблица то проблем нет, работает на ура.
А как быть если таблиц несколько? Как в коде указать диапазон ячеек, на которых строится таблица?
Пробовал SELECT * FROM
OpenDataSource ('Microsoft.Jet.OLEDB.4.0','Data Source="c:\test.xls";
User ID=Admin;Password=;
Extended properties=Excel 8.0')...sheet1$:E5$:G$ не работает(((
Подскажите плиззззз.....
1 июл 09, 20:33    [7365667]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
AAron
Member

Откуда: Москва
Сообщений: 4324
slonenko,

сделайте именованную область, и с нее можно вытянуть.
1 июл 09, 21:03    [7365736]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
сделайте именованную область, и с нее можно вытянуть.


Я догадывался, что нужно как-то назвать ту область с которой тянутть данные. Но если чесно, я в excel неочень, обьясните плиз как сделать именованную область.
1 июл 09, 21:36    [7365818]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
AAron
Member

Откуда: Москва
Сообщений: 4324
1.выделить область.
2.либо через формулы, либо слева от строки ввода формул есть небольшая область, в которой можно указать имя.
1 июл 09, 22:42    [7365970]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
AAron,

Окей, область назвал. А какой синтаксис в запросе? Пробывал ...sheet1$.region1$, ...sheet1$:region1$, просто ...region1$ не то(((
1 июл 09, 23:48    [7366141]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
AAron
Member

Откуда: Москва
Сообщений: 4324
slonenko,

а уж это я не помню.
могу посоветовать мастером импорта открыть и скопировать строку подключения.
2 июл 09, 00:26    [7366244]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
Bigheadman
Member

Откуда:
Сообщений: 2663
slonenko
AAron,

Окей, область назвал. А какой синтаксис в запросе? Пробывал ...sheet1$.region1$, ...sheet1$:region1$, просто ...region1$ не то(((
Символ $ нужен только при запросе к листам. При запросе к именованным областям $ не нужен. Используйте просто SELECT * FROM region1
2 июл 09, 01:33    [7366376]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Bigheadman
Используйте просто SELECT * FROM region1


Урааа, получилось, вот код
select * from OpenDataSource ('Microsoft.Jet.OLEDB.4.0','Data Source="c:\test.xls";UserID=Admin;Password=;Extended properties=Excel 8.0')...region1

AAron и Bigheadman спасибо ОГРОМНОЕ за ответы!
2 июл 09, 10:34    [7366993]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
ХЕЛП!!!!

select * from OpenDataSource ('Microsoft.Jet.OLEDB.4.0','Data Source="c:\test.xls";UserID=Admin;Password=;Extended properties=Excel 8.0')...region1

Вот этот код поработал пару дней, а потом вылезла ошибка:
НЕВОЗМОЖНО НАЙТИ УСТАНАВЛИВАЕМЫЙ ISAM!!!

ппц, и что теперь делать?!?!?!?!
4 июл 09, 20:09    [7377005]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
AAron
Member

Откуда: Москва
Сообщений: 4324
slonenko,

искать ошибку
4 июл 09, 22:16    [7377108]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
Fatty
Member

Откуда: Славен град Петров
Сообщений: 121
slonenko
ХЕЛП!!!!

select * from OpenDataSource ('Microsoft.Jet.OLEDB.4.0','Data Source="c:\test.xls";UserID=Admin;Password=;Extended properties=Excel 8.0')...region1

Вот этот код поработал пару дней, а потом вылезла ошибка:
НЕВОЗМОЖНО НАЙТИ УСТАНАВЛИВАЕМЫЙ ISAM!!!

ппц, и что теперь делать?!?!?!?!


Скорей всего за пару дней ты изменил именованную область
Выдели нужную область опять и переназначь то же имя

~'J'~
5 июл 09, 16:02    [7377935]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Да нет, все перепроверил. Все названия областей на месте и не были переименованы. Пробовал и с другим файлом .xls, пробовал переустанавливать офис, брал библиотеку msexcl.dll с другого экселя и регистрировал ее на своем компе при этом удалив старую....все безрезультатно(((((
Осталось одно - попробовать переустановить ms.jet.......
5 июл 09, 16:37    [7377993]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Вот-те на, список драйверов ODBC пуст!!!!!!! Почему-то пропали все драйвера ODBC!!!
5 июл 09, 17:17    [7378035]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
В реестре пропала информация про все odbc драйвера, восстановил....но главной проблемы это не решило.....ну не могу я соединится с excel https://www.sql.ru/forum/images/cry.gif
Помогите пожалуйста!!!!
5 июл 09, 17:47    [7378078]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
Эта команда exec master..xp_cmdshell 'dir c:\test.xls' вернёт в списке ваш файл?
5 июл 09, 18:13    [7378099]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Prolog,

Да
5 июл 09, 18:18    [7378102]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
А так?
select * from OpenDataSource ('Microsoft.Jet.OLEDB.4.0','Data Source="c:\test.xls";UserID=Admin;Password=;Extended properties=Excel 8.0;HDR=No')...region1
5 июл 09, 18:20    [7378104]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Не работает, да как я только не пробовал(((
Мне кажется тут дело не в параметрах, а в самом ms jet, но у меня не выходит его переустановить. На машине - win xp sp3, соответственно mdac самый последний и его преустановить то же не могу т.к. в интернете версии более старые.
Неужели придется винду переустанавливать https://www.sql.ru/forum/images/bigeyes.gif
5 июл 09, 18:26    [7378111]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
Glory
Member

Откуда:
Сообщений: 104760
Microsoft.Jet.OLEDB является OLEDB драйвером, а не ODBC. Это во-первых.
А во-вторых, Microsoft.Jet.OLEDB не входит в MDAC.
В-третьих, наличие этого драйвера определяется через exec sys.sp_enum_oledb_providers
5 июл 09, 18:32    [7378117]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Glory,

Хорошо, а как его (MS.Jet.OleDb) можно переустановить?
5 июл 09, 18:39    [7378124]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
Glory
Member

Откуда:
Сообщений: 104760
slonenko
Glory,

Хорошо, а как его (MS.Jet.OleDb) можно переустановить?

Скачать с сайта MS разумеется
5 июл 09, 18:42    [7378127]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Скачал, при установке говорит что у меня версия установленного пакета выше чем у того который устанавливаю. На сайте майкрософт есть табличка со всеми версиями библиотеки Msjet40.dll. Так вот, такой версии как у меня в этой таблице нет....Там так и написано

"Если версия Msjet40.dll отличается от всех перечисленных в таблице, вероятно, на компьютере установлено исправление."

Может у меня какое-то кривое "исправление"!?!?!?!?!
5 июл 09, 19:00    [7378147]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
Glory
Member

Откуда:
Сообщений: 104760
Вы перед установкой проверяли наличие Microsoft.Jet.OLEDB ?
5 июл 09, 19:06    [7378157]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Glory,

Да, выполнил процедуру sys.sp_enum_oledb_providers как вы говорили, в полученом списке увидел свой Microsoft.Jet.OleDb провайдер.
5 июл 09, 19:18    [7378174]     Ответить | Цитировать Сообщить модератору
 Re: импорт из Excel в MS SQL  [new]
slonenko
Member

Откуда: Киев
Сообщений: 44
Даже не знаю, что еще можно сделать........мож переустановить sp3 на винду
5 июл 09, 20:29    [7378274]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить