![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Импорт из dbf файла через ADO [D5, XP]
Lera © (2008-11-13 10:20:00)Уважаемый профи, подскажите пожалуйста выход из ситуации.
Действия в коде:
1. Происходит успешное соединение с OLE - провайдером после выбора файла terrlist_closed.dbf из дирректории FileDir на жестком диске:
ConnectionString := 'Provider=MSDASQL.1;Data Source=Файлы dBASE;Mode=Read;' +'Extended Properties="DSN=Файлы dBASE;' +
'DBQ=' + FileDir + ';DefaultDir=' + FileDir + ';DriverId=277;FIL=dBase IV;";Initial Catalog=' + FileDir;
2. При попытке открыть запрос:
SELECT row_id, nameu, tu, amr,
adress, kd, sd, rg, nd,
gr, descript
FROM terrlist_closed.dbf
WHERE tu IS NOT NULL
Выдается ошибка:
"EOleException
[Microsoft][Драйвер ODBC dBase] Объект 'terrlist_closed.dbf' не найден ядром базы данных Microsoft Jet. Проверьте существование объекта и правильность имени и пути"
Anatoly Podgoretsky (2008-11-13 13:08:00) [1]> sniknik (13.11.2008 12:55:10) [10]
Да жалко ее.
sniknik (2008-11-13 12:55:00) [2]> а как формировать строку от драйвера?
легко, вместо DSN прописать драйвер, у тебя это -> DRIVER={Microsoft dBase Driver (*.dbf)};
> Не надо, ты продолжаешь ходить по граблям. Откажись от ODBC пока не поздно
да пусть помучится, может атрофированный "голос разума" себе "подкачает". :)
Anatoly Podgoretsky (2008-11-13 11:36:00) [3]> Lera (13.11.2008 11:03:08) [8]
Не надо, ты продолжаешь ходить по граблям. Откажись от ODBC пока не поздно
Lera (2008-11-13 11:03:00) [4]а как формировать строку от драйвера?
sniknik (2008-11-13 10:56:00) [5]кстати посмотри на ошибку
> "EOleException
> [Microsoft][Драйвер ODBC dBase] Объект 'terrlist_closed.dbf' не найден ядром базы данных Microsoft Jet.
> Проверьте существование объекта и правильность имени и пути"
думаешь его не будет на компе с ODBC если сам ODBC использует его? ошибка то от него.
sniknik (2008-11-13 10:53:00) [6]> ну или как минимум от русских имен в DSN.
в руской редакции винды создаются именно так, если использовать созданные по умолчанию...
но выход есть, даже с учетом
> Была задача использовать ODBC
не использовать DSN! формировать строку от драйвера...
> по умолчанию находящиеся на любом компьютере.
а вот это вранье... не на любом, большинстве, практически на всех сйчас использующих винду, но не на любом, а вот DSN так вообще может быть на любом языке, не только русском, или отсутствовать вообще (в висте судя по тем версиям что виде это уже умолчание). и это очень частые явления (не создавая свой рискуешь "вляпаться", в отличие от наличия jet что тебе чуствую хотели посоветовать)
Lera (2008-11-13 10:41:00) [7]Была задача использовать ODBC по умолчанию находящиеся на любом компьютере.
Anatoly Podgoretsky (2008-11-13 10:36:00) [8]Для начала надо уйти от ODBC, ну или как минимум от русских имен в DSN.
Palladin (2008-11-13 10:36:00) [9]кхм...
Lera (2008-11-13 10:27:00) [10]Какому?:)
Palladin (2008-11-13 10:23:00) [11]
> Проверьте существование объекта и правильность имени и пути
совету последовала?