Linux ubuntu 17.4 Firebird 3.0
The problem occurs with the simplest of algorithms.
I create a datamodule and inside I create a TUniConnection to connect to a firebird 3.0 DB and then I make an elementary query .
The second time I run the same code I get an error while attempting to connect to the database
FIRST
start
try UniLocale.Connect
OK
try UniQuery1.Open;
Connection is not defined
fine
.
SECOND
start
try UniLocale.Connect
Access violation at address 000000000042428F, accessing address 00000001964C40E8
try UniQuery1.Open;
Connection is not defined
Code: Select all
procedure TDataModule1.DataModuleCreate(Sender: TObject);
var
UniLocale: TUniConnection;
UniQuery1: TUniQuery;
begin
UniLocale := TUniConnection.Create(nil);
UniLocale.Name := 'UniLocale';
UniLocale.ProviderName := 'InterBase';
UniLocale.Port := 3050;
UniLocale.Database := 'L:\CkDB\box00\ckdata.fdb';
UniLocale.Username := 'sysDBa';
UniLocale.Password := 'masterkey';
UniLocale.Server := 'localhost';
UniLocale.LoginPrompt := False;
Writeln('start');
UniLocale.SpecificOptions.Values['ClientLibrary'] := 'libfbclient.so.3.0.1';
UniLocale.Database := '/home/xroot/db/ckdata.fdb';
UniLocale.Server := '192.168.0.47';
try
Writeln('try UniLocale.Connect');
UniLocale.Connect;
Writeln('OK');
except
on E: Exception do
Writeln(E.ToString);
end;
UniQuery1 := TUniQuery.Create(nil);
UniQuery1.Name := 'UniQuery1';
UniQuery1.SQL.Text := 'Select * From Anagrafica';
UniQuery1.ReadOnly := True;
try
Writeln('try UniQuery1.Open;');
UniQuery1.Open;
Writeln('OK');
except
on E: Exception do
Writeln(E.ToString);
end;
Writeln('fine');
UniQuery1.Close;
UniLocale.Close;
UniQuery1.Free;
UniLocale.Free;
UniLocale := nil;
UniQuery1 := nil;
end;