Te falto agregar lo siguiente Thales :
Cuan una tabla tenga relación (fk) con otras tablas hay que crear una Excepción Propia para avisarle al usuario la causa del error:
Código SQL
[-]
CREATE EXCEPTION EX_BORRAR_MAESTRO 'No puede Borrar Maestro porque tiene relación con Detalles'
En delphi sólo cachas el error cuando borras el maestro Ejemplo:
Código Delphi
[-]
try
Maestro.delete;
except
raise;
end;
Saludos....