Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Динамическое подключение ADO, Не получается... 
:(
    Опции темы
Foley
Дата 20.5.2006, 23:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фсемба Яцца
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 31.1.2006
Где: Россия, Арх.обл

Репутация: нет
Всего: 7



проблема такая, мне надо динамически подключить табличку MSAccess через ADO, в АДО пишу соннекшонстринг с указанием папки допустим:
Код

var s: string;
begin
s:=extractfilepatch(paramstr(0));
ADOtable1.ConnectionString='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+s+'\Data\db.mdb;Mode=ReadWrite;Persist Security Info=False';
ADOtable1.tableName:='NT';
 
то выдает ошибку, мне это надо чтобы прогу можно было копировать в любой каталог (локальная)

Добавлено @ 23:46 
конечно база и табличка такие имеются... 
PM MAIL ICQ   Вверх
Grig
Дата 21.5.2006, 07:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 809
Регистрация: 29.4.2005
Где: Иркутск

Репутация: 4
Всего: 16



Скорей всего у тебя лишний слэш вот здесь вот:
Цитата

'+s+'\Data...

Смотри как надо:
Код

ADOTable1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+'Data\db.mdb;Persist Security Info=False';
ADOTable1.TableName:='NT';
ADOTable1.Active:=true;


В таком случае неважно в какую папку пользователь скопирует проект, важно чтобы внутри папки проекта была папка Data с базой данных
Удачи!  

Это сообщение отредактировал(а) Grig - 21.5.2006, 07:48


--------------------
        
PM MAIL ICQ   Вверх
Foley
Дата 21.5.2006, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фсемба Яцца
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 31.1.2006
Где: Россия, Арх.обл

Репутация: нет
Всего: 7



Grig, мда... простой вопрос, а ставит в тупик... smile  
PM MAIL ICQ   Вверх
ТоляМБА
Дата 22.5.2006, 05:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



4 FoleyВ следующий раз используй ShowMessage и сразу будешь видеть где грабли. 
PM   Вверх
Foley
Дата 23.5.2006, 23:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фсемба Яцца
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 31.1.2006
Где: Россия, Арх.обл

Репутация: нет
Всего: 7



кстати слэш нужен... просто винда приглючила и после перезагрузки все компильнулось и заработало как надо, вот уж не знаю что она так... 
PM MAIL ICQ   Вверх
Foley
Дата 8.6.2006, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фсемба Яцца
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 31.1.2006
Где: Россия, Арх.обл

Репутация: нет
Всего: 7



Помогите найти ошибку:
Я пишу программу, которая использует динамическое подключение к базе данных, база данных MSAccess, способ доступа - ADO. Ничего не понимаю, вот код, при помощи которого происходит подключение к базе:
Код

var s: string;
begin
AT_rab.Active:=false;
s:=ExtractFilePath(ParamStr(0));
AT_rab.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+s+'\Data\Prikaz.mdb;Mode=ReadWrite;Persist Security Info=False';
AT_rab.TableName:='Rabot';
AT_rab.Active:=true;

на том компьютере где разрабатывалась программа она работает, подключение происходит и все нормально, но при переносе ее на другой компьютер она работать не хочет, выскакивает ошибка:
"Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности проверьте значение всех состояний OLE DB. Работа не выполнена."
Хотя все настройки вроде одинаковы на обоих компьютерах. 
Проверял на других компьютерах, на них она работает нормально, но почему-то именно на этом компьютере не работает. Проверял на наличие вирусов, но их там не оказалось.
Писал программу на 2000-ом, проверял на ХР и ХР SP2, на них она работает, а на том компе на котором не идет стоит ХР SP1. Может подскажете где какие настройки можно сменить (или проверить состояния OLE DB)? Или неужели это SP1 может так влиять?  
PM MAIL ICQ   Вверх
T0nic
Дата 19.6.2006, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 17.6.2006

Репутация: нет
Всего: нет



по идее extractfilepath выдает адрес вместе с зарывающим слешем, значить слеш не нужен, по крайней мере м еня так) 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0444 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.