Проблема с именами таблиц в Excel с драйвером oledb - PullRequest
0 голосов
/ 09 февраля 2010

Я использую драйвер Oledb для загрузки данных из Excel для отображения в tabcontrol с datargids

Я использую следующий цикл для загрузки данных с каждого листа

foreach (string str in sheets)
                {

                    string query = "SELECT * FROM [" + str + "]";


                    adapter.SelectCommand.CommandText = query;
                    adapter.Fill(ds,str);
                }

Работает хорошо, пока названия листов не начинаются с цифр. У меня есть файл Excel с именем листа 26203 REV C (EVK). Это выдает ошибку как The Microsoft Jet database engine could not find the object ''26203 REV C [EVK]$'_'. Make sure the object exists and that you spell its name and the path name correctly. Что может быть решением проблемы. Я не могу контролировать имена листов.

1 Ответ

1 голос
/ 09 февраля 2010

Попробуйте использовать backticks (`) вместо скобок:

SELECT * FROM `26203 REV C (EVK)$`

Помните, что при выборе необходимо также указывать суффикс символа доллара.

...