Xpoint
   [напомнить пароль]

MSSQL2000: Как прочитать Excel файл? Не получается

Метки: [без меток]
2007-03-06 14:57:30 [обр] Top manager(0/2)[досье]

MSSQL2000: Как прочитать Excel файл через T-SQL?
Файл лежит по ссылке http://ildb.rapidsoft.net/xls.xls
пробывал

SELECT *
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=C:\TEMP\xls.xls;','SELECT * FROM [order$]') AS XLS

Выходит какая-то чушь.

спустя 5 дней [обр] Top manager(0/2)[досье]

Ответ найдет, ну почти найден, во всяком случаи чё-то появилось :)
Ответ был во всемогущем реестре!
Надо было поставить ключ
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows = 20

:)

а далее запрос

SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\TEMP\osbOrder.xls;IMEX=1',
'SELECT * FROM [order$]')
спустя 43 секунды [обр] Top manager(0/2)[досье]
SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\TEMP\osbOrder.xls;IMEX=1',
'SELECT * FROM [order$]')
Что такое IMEX?
Что значит ключ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows?
спустя 2 дня 12 часов [обр] Кирилл [Kirk] Королев(121/673)[досье]
Top manager[досье] вы когда-нибудь научитесь искать самостоятельно?
http://connectionstrings.com/?carrier=excel
http://blog.lab49.com/?p=196
спустя 11 часов [обр] Top manager(0/2)[досье]
Кирилл [Kirk] Королев[досье] я думаю вы меня вообще за не нормального считаете... .
Первое что я делаю иду в google, т.к. врени меньше затрачивается на поиск, и только потом иду на форум.
Спасибо за линки.
спустя 5 часов [обр] Алексей Рюмин aka Dwarf(120/864)[досье]
Top manager[досье]
http://www.google.ru/search?hl......DB.4.0+IMEX&btnG=Google+Search - первая ссылка
http://www.google.ru/search?hl......ff&q=TypeGuessRows&btnG=Search - первая ссылка
Что я делаю не так? :)
спустя 4 часа 43 минуты [обр] Кирилл [Kirk] Королев(121/673)[досье]
Top manager[досье] да нет, удивляюсь. Я никогда не коннектился к экселю, но ответ на ваш вопрос я нашел за минуту.
Алексей Рюмин aka Dwarf[досье], думаю, потратил и того меньше =)
спустя 15 часов [обр] Top manager(0/2)[досье]
Кирилл [Kirk] Королев[досье] Я понимаю Ваше удивление, если не обратил бы внимание на слова в первом посте: "пробывал"..., там описан пример, указаный в ссылках который Вы дали. Все остальные способы давали такую же чушь. Оказалось, что нужно малость исправить рееестр, а точнее параметры драйвера и только. :) Как только сделал, мой пример и Ваши (указанные по ссылкам)- заработали. Но без реестра, ни чё не получилось бы.
спустя 3 минуты [обр] Top manager(0/2)[досье]
Алексей Рюмин aka Dwarf[досье] первая ссылка - делал тоде самое, не получалось.
Вторая ссылка - более существенна и именно об этом я отписался в посте выше вашего.
Заметьте, что именно вы ищите "TypeGuessRows", я даже не знаю что это :), я, как и многие начал искать типа "SQL Excel" или "sql excel import"
спустя 4 часа 6 минут [обр] Алексей Рюмин aka Dwarf(120/864)[досье]

Top manager[досье] Насколько я понимаю, я и Кирк имеем в виду ваш второй вопрос, а именно вот этот:

Что такое IMEX?
Что значит ключ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows?

Поиск в гугле занял, действительно, меньше минуты. Но это у меня - я некоторым образом достаточно плотно работаю с поисковиками :) Рассуждения были приблизительно такие: абрревиатура IMEX может означать все что угодно (институт какой-нибудь, например), нас же она интересует в связке с драйвером - поэтому запрос сразу был уточнен введение термина "Microsoft.Jet.OLEDB.4.0", в случае же с TypeGuessRows - это слово достаточно уникальное, и можно было предположить, что уточненеия запроса не понадобится. Что и подтвердилось на практике.

спустя 1 минуту [обр] Top manager(0/2)[досье]
Алексей Рюмин aka Dwarf[досье] понятно :)
спустя 3 часа 35 минут [обр] Кирилл [Kirk] Королев(121/673)[досье]
Я бы сказал, "registry TypeGuessRows" =)
Кстати, http://support.microsoft.com/kb/281517
Powered by POEM™ Engine Copyright © 2002-2005