Hola buenos dias, espero esten bien. Queria saber si alguien sabe como capturar los errores que ocurran al conectar la base de datos. Veran al iniciar mi sistema verifica un archivo ini donde estan los parametros de conexion de la base de datos y procede a conectar pero si llegara a ocurrir un error en la coneccion como podria capturarlo y si se cumple esa condicion abrir el modulo donde configuro la conexion para la base de datos. Como base de datos uso PostgreSQL y para la coneccion FireDac.
Vi este codigo en la inter para obtener el error pero veo que es para un dataset no para el FDConnection1
Código Delphi
[-]
try
DataSet.Post;
except
on E: Exception do
ShowMessage(E.Message);
end;
aca les dejo el codigo con el que conecto la BD al iniciar el sistema.
Código Delphi
[-]
procedure Tfrmvp.FormShow(Sender: TObject);
var DriverID,DB,User,Pass,Server,Port: String;
begin
if FileExists('ConexionBD.ini') then
begin
FDPhysPgDriverLink1.VendorLib:='libpq.dll';
FDConnection1.Connected:=false;
FDConnection1.Params.Clear;
FDConnection1.Params.DriverID:='PG';
Conexion:=Tinifile.Create(ExtractFilePath(Application.ExeName)+'ConexionBD.ini');
with Conexion do
begin
DB:= Conexion.ReadString('Conexion', 'DataBase', '');
User:= Conexion.ReadString('Conexion', 'User_Name', '');
Pass:= Conexion.ReadString('Conexion', 'Password', '');
Server:= Conexion.ReadString('Conexion', 'Server', '');
Port:= Conexion.ReadString('Conexion', 'Port', '');
end;
with Conexion do
begin
FDConnection1.Params.Add( 'Server=' + Server );
FDConnection1.Params.Database:=DB;
FDConnection1.Params.UserName:=User;
FDConnection1.Params.Password:=Pass;
end;
Timer1.Enabled:=True;
Barra_Estado;
end
else
begin
ShowMessage('BIENVENIDO');
end;
end;
Si pueden corregir mi idea no esta de mas.
Espero puedan ayudarme. De antemano Gracias.