Volver a poner a null un campo FK.

09/02/2007 - 17:25 por José Luis | Informe spam
Hola a todos,

estoy migrando una aplicación a usar como base de datos SQL Server 2005.
Después de mucho pelearme y gracias también a la ayuda de algunos compañeros
de este foro consegui hacer que la integridad referencial funcionara tal
como quería. Es decir, los campos FK no tengan que tener necesariamente
valor sino que puedan ser nulos.

El problema me ha venido cuando tengo un registro que en el campo fk ya
tiene valor y lo quiero volver a pasar a nulo. En ese momento me salta el
siguiente error:

Mens 44446, Nivel 16, Estado 1, Procedimiento TrigU_htl_precios_billete,
Línea 1

Cannot add or change record. Referential integrity rules require a related
record in table 'htl_proveedores'.

Mens. 3609, Nivel 16, Estado 1, Línea 1

La transacción terminó en el desencadenador. Se anuló el lote.
 

Leer las respuestas

#1 Alejandro Mesa
09/02/2007 - 17:40 | Informe spam
José Luis,

Crees que puedas postear la estructura de las tablas, incluyendo
restricciones e indices, asi como el texto del trigger que esta fallando?


AMB


"José Luis" wrote:

Hola a todos,

estoy migrando una aplicación a usar como base de datos SQL Server 2005.
Después de mucho pelearme y gracias también a la ayuda de algunos compañeros
de este foro consegui hacer que la integridad referencial funcionara tal
como quería. Es decir, los campos FK no tengan que tener necesariamente
valor sino que puedan ser nulos.

El problema me ha venido cuando tengo un registro que en el campo fk ya
tiene valor y lo quiero volver a pasar a nulo. En ese momento me salta el
siguiente error:

Mens 44446, Nivel 16, Estado 1, Procedimiento TrigU_htl_precios_billete,
Línea 1

Cannot add or change record. Referential integrity rules require a related
record in table 'htl_proveedores'.

Mens. 3609, Nivel 16, Estado 1, Línea 1

La transacción terminó en el desencadenador. Se anuló el lote.







Preguntas similares