Vlaidar datos en un formulario web

15/12/2006 - 23:34 por RGQ | Informe spam
Necesito saber como se puede validar información de una base de datos cuando
este borrando alguna registro en el cual tenga llaves foránes en dos tablas.
 

Leer las respuestas

#1 Alberto Poblacion
16/12/2006 - 11:45 | Informe spam
"RGQ" wrote in message
news:
Necesito saber como se puede validar información de una base de datos
cuando
este borrando alguna registro en el cual tenga llaves foránes en dos
tablas.



Lo más fácil es intentar borrarlo dentro de un try...catch, e interceptar
el SqlException que se produce si el registro no se puede borrar debido a
las foreign keys, mirar el número de excepción dentro del Sqlexception para
cerciorarse de que efectivamente la causa del error es esa, y en caso
afirmativo informar al usuario del motivo por el que no se puede borrar.

La alternativa, si no quieres causar la excepción, es hacer un select
sobre las tablas relacionadas por las llaves foráneas, para verificar que no
exista ninguna dependencia que impida borrar el registro, y a continuación
borrarlo si no las hay. Para impedir el (improbable) caso de que otro
proceso cree un registro hijo justo entre medias de verificar que no existe
y borrar el registro padre, lo que se puede hacer es realizar todo el
proceso dentro de una transacción para que la base de datos mantenga
bloqueos durante la operación.

Preguntas similares