Ver Mensaje Individual
  #2  
Antiguo 20-06-2007
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Reputación: 26
ContraVeneno Va por buen camino
Código Delphi [-]

Try
 ExecSQL;
except on E:EDBEngineError do begin
   If E.Errors[0].ErrorCode = 9729 then begin
     Showmessage('Ya existe');
   end else begin
     raise;
   end; //if errorcode
 end; //exception
End; //try

Lo que tienes que manejar es el código de error. En mi caso por utilizar SQL Server, el error es el 9729 para una llave duplicada (única); tienes que identificar que código de error te arroja firebird y/o postrgeSQL en cada uno de los casos que quieres identificar.

Teniendo esto, podrías utilizar un "Case E.Errors[0].ErrorCode Of" para cada caso en particular.

Bienvenido a los foros, dale una leída a este enlace para tener mayor información.
__________________


Última edición por ContraVeneno fecha: 20-06-2007 a las 18:48:24.
Responder Con Cita