Hi,
I'm trying to handle an EIBCError raised by DevartInterbase driver using Delphi try...except, but I can not compile because I don't know where is the definition of EIBCError. I assumed it was in DBXDevartInterBase*.dcu (5 files), but not.
TIA,
Ricardo
Where is EIBCError
Re: Where is EIBCError
EIBCError is the internal driver exception. It is raised and then catched inside the driver. So there is nothing to catch for you.
Re: Where is EIBCError
May be, but my application receive a exception whose ClassName is EIBCError. It is raised when the App tries to reconnect to a Firebird server whose connection was lost (network problem, server shutdown...).
something like this
TIA,
Ricardo
something like this
Code: Select all
try
while true do
begin
MySQLQuery.ExecSQL;
sleep(1000);
...
// during this loop Firebird server is shutdown
end;
except
on E: TDBXError do DoReconex;
end;
...
procedure DoReconex;
begin
for i:=1 to NumberOfRetries do
begin
try
MySQLConnection.Connected := False;
except
// Do nothing
end;
try
MySQLConnection.Open;
except
on E: Exception do
LogMessage('E.ClassName: '+ E.ClassName+' E.Message:'+ E.Message);
// here E.ClassName = 'EIBCError'
// E.Message is equal tan previous TDBXError: Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements
connection shutdown
// if you test this case with dbexpsda and SQLServer E.ClassName = 'TDBXError'
// until SQLServer runs again and the reconnection is successful
end;
end;
end;
Ricardo
Re: Where is EIBCError
Unfortunately, we could not reproduce the issue. When executing the specified code, ClassName equals TDBXError, but not EIBCError.
Please compose a full sample demonstrating the described behavior and send it to us to us via e-support form: https://www.devart.com/company/contactform.html, including scripts for creating database objects. Also, please specify Firebird and IDE versions you are using.
Please compose a full sample demonstrating the described behavior and send it to us to us via e-support form: https://www.devart.com/company/contactform.html, including scripts for creating database objects. Also, please specify Firebird and IDE versions you are using.