SQL OPENROWSET с Excel

Я пытаюсь прочитать данные из электронной таблицы Excel в SQL, но по какой-то причине некоторые поля отображаются как NULL, хотя в электронной таблице есть данные в этом конкретном столбце / строке (в данном случае это число).

Все остальные столбцы / строки с текстом отображаются ОК.

Это запрос, который я использую

select * from 
OPENROWSET ('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=G:\XLS\ACK.xls', [ACK$])

Я использую SQL Server Management Studio 2005 для выполнения запроса.

Любые идеи / предложения относительно того, почему это происходит? Благодарю.

1 ответ

Решение

Похоже, если я использую CSV вместо XLS, то я получаю все данные в целости

select *
from OpenRowset('MSDASQL', 'Driver={Microsoft Text Driver (*.txt; *.csv)}; DefaultDir=G:\xls\;Extensions=CSV;',
'select * from ack2.csv')
Другие вопросы по тегам