bueno, lo de hidek1 no aplica en algunos casos: comúnmente mis select se alimentan de tablas "fuertes" y cuando hago los inserts o updates correspondientes a las tablas "débiles", las FK se encargan de hacerme saber si algún select está alterado, por lo tanto el controlar el tipo de error devuelto por el dbms es fundamental y ahorra mucho código