Código Delphi
[-]
try
ExecSQL;
except on E:Exception do
if (E is EDBEngineError) then
with EDBEngineError(E).Errors[0] do
if ErrorCode = 9729 then
MessageBox(frmInicial.Handle,'Llave duplicada.','Error',MB_ICONERROR);
end;
algo que hice alguna vez fue:
Código Delphi
[-]
try
except on E:Exception do
if (E is EDBEngineError) then
with EDBEngineError(E).Errors[0] do
if ErrorCode = 9729 then
end;
y me gustaría su opinión al respecto, es decir, tratar de insertar la información, y si hay una violación de llave, entonces actualizar la información, ¿es correcto?, ¿válido?, ¿óptimo?