@White_Bambie

Почему ADO не подключается к БД MS Access?

В форме прописываю процедуру для добавления подключения к баз данных access, но последняя не подключается.
Использую среду разработки Delphi XE7.
procedure TfMain.FormCreate(Sender: TObject);
begin
  GetDir(0, DIR);
try
  fDM.ADOConnection1.LoginPrompt := False;
  fDM.ADOConnection1.Connected := False;
    fDM.ADOConnection1.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;' + 'Data Source=' + DIR +'/DB/DB.mdb;' + 'Persist Security Info=False;';
  fDM.ADOConnection1.Connected := True;
except
  MessageBox(Handle,'Произошла ошибка при подключении к базе данных!','Ошибка!',MB_ICONERROR + MB_OK);
  Application.Terminate;
  end;
end;

Не могу понять в чем ошибка... Помогите советом добрым :)
p.s.: в Data Module Create процедура срабатывает и база подключается. А почему через главную форму нет?
  • Вопрос задан
  • 39 просмотров
Решения вопроса 1
tsklab
@tsklab
Системный администратор, программист
Data Module Create процедура срабатывает и база подключается. А почему через главную форму нет?
Если fDM ещё не создан, то нельзя его использовать.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Kot-da-Vinci
Обычно, чтобы понять в чем ошибка, смотрят, как минимум, текст сообщения возникшего исключения, а то и его класс. А не делают "Ой!" и "Application.Terminate".
Как-то так, например:
except
  on E: Exception do
  begin
    MessageBox(Handle,
      'Произошла ошибка при подключении к базе данных!' + sLineBreak 
        + E.ClassName + ': ' + E.Message, 
      'Ошибка!',
      MB_ICONERROR + MB_OK);
    Application.Terminate;
  end;
end;

Ответ на ваш вопрос вам уже написали.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы