![]() |
|
|
![]()
|
|
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
Здравствуйте. у меня вопрос. Я работаю над задачей создания программы, осуществляющей поиск в базе данных.
База данных представляет из себя досовские таблицы dBase III. \ У меня возникают ошибки при подключении. Строка коннекта у меня следующая: DSN=dBASE Files;DBQ=\\123\AllDocs\321\arxiv;DefaultDir=\\123\AllDocs\321\arxiv;DriverId=21;FIL=DBASE3;MaxBufferSize=2048;PageTimeout=5; P.S.: FIL=DBASE3 - так для dos-овских табличек FIL=dBase III - так для win-досовских. Поставщик Microsoft OLE DB Provider for ODBC drivers. Проверка подключения соответственно выдаёт ошибку следующую: "Не выполнина проверка подключения из-за ошибки при инициализации поставщика. 0x80040E21" ну и соответственно при выполнении запроса программа выдаёт: "произошли ошибки при выполнении многошаговой операции OLE DB...по возможности проверьте значения всех состояний..." Я перед тем как начинать работать над сетевым приложением многое прочитала, работала всегда с BDE, но почитав Дельфийскую Базу Знаний и не только, пришла к выводу что необходимо работать в ADO. По этому я нуб возможно где-то, ибо впервые начала работать с ADO. вот здесь нашла инфу, но не поняла как ей воспользоваться: http://support.mdl.ru/Pc_compl/Doc/Db2/v7....me3.htm#sql1100 Чтоб долго читателям не искать, вот дословно что там пишут: " SQL1183N Пользовательская функция "<имя-функции>" получила ошибку OLE DB от указанного поставщика OLE DB. HRESULT="<код-результата>". Диагностический текст: "<текст-сообщения>". Объяснение: Указанный поставщик OLE DB возвратил код ошибки OLE DB. "<код-результата>" - это код ошибки, возвращенный OLE DB, а "<текст-сообщения>" - полученный текст сообщения. Ниже приводится (неполный) список значений HRESULT и возможных причины ошибки. 0x80040E14 Ошибки в команде, например, ошибочный синтаксис передаваемой строки команды. 0x80040E21 Ошибки, например, переданный ID столбца неверен (DB_INVALIDCOLUMN). 0x80040E37 Указанной таблицы не существует. Действия пользователя: Посмотрите в справочниках Microsoft OLE DB Programmer's Reference и Data Access SDK полную документацию кодов HRESULT." Я очень мало нашла информации по этой ошибке. Уверенна, что решение есть и оно простое. (с) Может я неправильно выбрала поставщика? Может быть нужно что-то доустановить? Прошу помочь, возможно кто-то сталкивался... Добавлено @ 01:46 Ещё добавлю.. : мои таблицы dBase III+ |
|||
|
||||
| ТоляМБА |
|
|||
![]() Котэ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1607 Регистрация: 15.12.2004 Репутация: 3 Всего: 252 |
Создай в Датабэйс десктопе таблицу dBase III+ - пару полей, пару записей, и попробуй приконнектиться к ней. Если прокатит - грабли в твоей таблице (к которой не можешь подключится), если не прокатит - грабли в дровах (ну и выраженьице), в смысле в драйверах. Отпишись по-любому, будем разбираться.
Вообще-то это форум программистов. |
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
ок, занимаюс.
|
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
Сделала новую табличку, всё так же..
табличка test.dbf - dbase III+ строка подключения: DSN=TEST;DBQ=\\SPARTAN\ALLDOCS\RegPost\qaz;DefaultDir=\\123\ALLDOCS\321\qaz;DriverId=21;FIL=dBase III;MaxBufferSize=2048;PageTimeout=5; Структура таблицы: где 1ое - имя поля, 2ое - тип, 3-е - size, 4-е - dec. A;N;10;4 B;D;8;0 C;N;10;4 D;C;30;0 При проверке подключения сообщение такое же как и в первом случае, код ошибки такой же. Вообщем ситуация не изменилась.. Добавлено @ 08:14 вернее строка подключения: DSN=TEST;DBQ=\\123\ALLDOCS\321\qaz;DefaultDir=\\123\ALLDOCS\321\qaz;DriverId=21;FIL=DBASE3;MaxBufferSize=2048;PageTimeout=5; Добавлено @ 08:21 пардон, не внимательно прочитала и табличку сделала в парадоксе. сейчас попробовала такую же сделать в дададесктопе, ругается на B;D;8;0, то есть ругается на размер поля типа date, под именем D. |
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
теперь в тестовой табличке вообще убрала поле типа DATE. ситуация не изменилас.
вот и домой пора... |
|||
|
||||
| SergeBS |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
Dolphinchik,
1. Читай Доступ к БД-1. Локальные БД Суть: нечего с dbf через ADO работать. 2. Рабочая строка подключения к ДОСовой таблице(пример): Provider=MSDASQL.1;Persist Security Info=False;Mode=ReadWrite;Extended Properties="DSN=dbf01;UID=;SourceDB=c:\2;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;" При создании DSN выбирать драйвер VFP! Collate - по вкусу. Ну и куча другого тоже по вкусу, экспериментируй. Можно делать не системный, а пользовательский DSN и т.п.
Блин, ну при чем здесь коды ошибок DB2? Они у каждого сервера свои. И к этой ситуации ну никак не относятся. Нет у тебя этого сервера, и ошибок его тоже, соответственно.
Читай местные FAQи. И разберись с разницей: локальные - сетевые - клиент-серверные приложения. Поскольку у кой-кого в голове - каша. |
||||
|
|||||
| ТоляМБА |
|
|||
![]() Котэ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1607 Регистрация: 15.12.2004 Репутация: 3 Всего: 252 |
||||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
благодарю за ответ, испробую на работе, отпишу результат
Добавлено @ 10:57 ТоляМБА, не поняла? у меня через BDE всё работает за исключением with(nolock) сначало в BDE сделала, потом в ADO перенесла |
|||
|
||||
| CatATonik |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 95 Регистрация: 12.1.2007 Где: Москва Репутация: нет Всего: 8 |
||||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
ТоляМБА,
Между прочим, я BDE НИКОМУ НЕ СОВЕТУЮ ПРИМЕНЯТЬ. И в статье это есть в явном виде. (насчет АДО именно в качестве SQL-прибамбаса - там тоже есть Dolphinchik, Еще раз: читай статью! Там есть и цифры насчет времени. ADO+dbf = tormozzzzz. И проблемы. CatATonik,
Один из... Их как грязи. Я к Halcyon привык. |
|||
|
||||
| Dolphinchik |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
тетете..
тетете... насчет Halcyon..., скачала. поставила...не понравилось кстати линк на скачку: библиотека справка Halcoyn значит таки ADO+dbf =тормоз. хорошо, а что тогда использовать чтобы нормально работало? счас tdbf попробую.. |
||||
|
|||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
Dolphinchik,
Тетекать будешь, когда у тебя без советов все будет получаться. |
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
|
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
Перенесла приложение на другой компьютер, воспользовалась советами SergeBS, изменила запрос в ADO и всё заработало..., продолжаю учить матчасть, всем спасибо. Кстати работает быстро без касяков. Что за ошибка (код: 0x80040E21 ) была... don't know и времени нет разбираться хоть и интересно..=( |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |