Аксес подключение выдает ошибку

было ж уже

на

последовало:

Так а в коде что сейчас?
Файл где лежит?

Лежит здесь
I:\Projects\Embarcadero\Delphi\Server-Client\étoile\Serveur\Win64\Debug\BD\UserBD.mdb

функция

function TForm2.BDconnected(S3: string; S2, S1: Tobject): string;

begin
if s1 is TFDConnection then
begin

TFDConnection(s1).Params.DriverID:='MSAcc';
TFDConnection(s1).Params.Database:=S3;
//TFDConnection(s1).Params.AddPair('ODBCAdvanced','DefaultDir='+s3+'DriverId=25;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes');
TFDConnection(s1).Connected := True;

end;

if s1 is TFDQuery then
begin
TFDQuery(s2).SQL.Text:='Select*From User_Grid';
TFDQuery(s2).Active:=true;
end;
end;

end.

вызов функции

procedure TForm1.CornerButton1Click(Sender: TObject);
var
path:string;
DatabaseFilePath,AppDirPath:string;
begin
AppDirPath := ExtractFilePath(ParamStr(0));
DatabaseFilePath := AppDirPath + 'db\UserBD.mdb';
Form2.BDconnected(DatabaseFilePath,Form2.FDQuery1, Form2.FDConnection1);

end;

дык опять

не поняла db - папка, в которой находиться файл - UserBD.mdb.
сделала с большой та же самая ошибка повторяется.

db и bd это разные имена.

изменила функцию вызова

procedure TForm1.CornerButton1Click(Sender: TObject);
var
DatabaseFilePath,AppDirPath:string;
begin
AppDirPath := ExtractFilePath(ParamStr(0));
DatabaseFilePath := AppDirPath + 'BD\UserBD.mdb';
Form2.BDconnected(DatabaseFilePath,Form2.FDQuery1, Form2.FDConnection1);

end;

не чего не поменялось

AppDirPath возвращает "I:\Projects\Embarcadero\Delphi\Server-Client\étoile\Serveur\Win64\Debug\ " ?

вот что храниться в DatabaseFilePath:

а как ODBC настроен для этого драйвера?

вот это мне и нужно понять я нашла вот что :
ODBCAdvanced’,‘DefaultDir=I:\Projects\Embarcadero\Delphi\Server-Client\étoile\Serveur\Win64\Debug\BD;DriverId=25;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes’);
но он настроен на абсолютный путь соответственно вопрос если это и есть настройка ODBC настройка драйвера то как его делать относительным и куда потом вставить

Я об администраторе источников данных ODBC.

Я сижу, из под единственной админской учетной записи или совсем понимаю как это.

Делаю через визуальный редактор с абсолютными путями все получается


а с относительными нет

попробовала так:
Form2.FDConnection1.DataSets.DataSource.DataSet.State:='ODBCAdvanced’,‘DefaultDir='+DatabaseFilePath+'DriverId=25;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes’)';
не вышло

Так может Аватар правильно спросил, драйвер в Источники данных ODBC?
Посмотрите в системе, для виндовс можно в пункт Выполнить ввести: odbcad32.exe и жмакнуть Enter. И посмотреть есть ли драйвер Access и как его там обозвали.

О хорошо теперь поняла о чем он. Вот:


но не совсем понимаю как это поможет.

Настройки в FireDAC Connection правильные?

Нашла ещё кое что

Connection definition parameters
================================
Database=I:\Projects\Embarcadero\Delphi\Server-Client\étoile\Serveur\Win64\Debug\BD\UserBD.mdb
DriverID=MSAcc
================================
FireDAC info
================================
Tool = RAD Studio 10.1 Berlin
FireDAC = 15.0.1 (Build 86746)
Platform = Windows 32 bit
Defines = FireDAC_NOLOCALE_META;FireDAC_MONITOR
================================
Client info
================================
Loading driver MSAcc ...
  Loading odbc32.dll driver manager
  Creating ODBC environment handle
  Searching for ODBC driver ...
    Checking for ODBC driver [Microsoft Access Driver (*.mdb, *.accdb)] ...
      Found [Microsoft Access Driver (*.mdb, *.accdb)]
Driver Manager version = 03.81.18362.0000
================================
Session info
================================
Current catalog = 
Current schema = 
Driver name = ACEODBC.DLL
Driver version = Microsoft Office 2007 Access database engine
Driver conformance = 3
DBMS name = ACCESS
DBMS version = 04.00.0000

В проекте компонент FD Connection настроен правильно? Посмотрите его настройки в FireDAC Connection