Problemas al Relacionar Tablas en SQL - Server.

02/05/2007 - 16:43 por Fabián Tomás de Paula | Informe spam
Tengo lo siguiente:

La tabla UniDroga, tiene la siguiente estructura

ARTICULO vchar(12), DROGA int, CANTIDAD Float, UNIDAD int

Clave Principal: Articulo, Droga

El campo Droga está asociado a la tabla Drogas cuya estructura es:

CODDROGA int, DESCRIP vchar(30)

Clave Principal: CodDroga

El campo Unidad también está asociado a la tabla que se llama Art_TipUnid
que tiene la siguiente estructura:

CODIGO int, DESCRIP vchar(30)

Clave Principal: Codigo

Además está la Tabla Articulo que se relaciona con Unidroga también.
La tabla es:

IDArticulo VChar(12), Descrip 70, ... , CampoN

Clave Principal: IDArticulo


Ahora bien quiero establecer las siguientes relaciones que descritas dicen
ésto:

Que cuando cambie el código de un artículo también cambie en UniDroga, pero
que si se intenta eliminar un artículo y está en UniDroga que no permita
dicha
eliminación;

Que cuando cambie el código de una droga también cambie en UniDroga, pero
que si se intenta eliminarla y está en UniDroga que no permita dicha
eliminación.

Que cuando cambie el código de un tipo de unidad también cambie en UniDroga,
pero
que si se intenta eliminarla y está en UniDroga que no permita dicha
eliminación.

Sea como realice el Orden de las relaciones. Siempre la última relación a
establer
me tira el siguiente error.

La tabla 'Articulo' se guardó correctamente
Tabla 'UniDroga'
- No se puede crear la relación 'FK_UniDroga_Articulo'.
Si especifica la restricción FOREIGN KEY 'FK_UniDroga_Articulo' en la tabla
'UniDroga', podrían producirse ciclos o múltiples rutas en cascada.
Especifique ON DELETE NO ACTION o UPDATE NO ACTION, o bien modifique otras
restricciones FOREIGN KEY.
No se pudo crear la restricción. Consulte los errores anteriores.

Para el momento de generado el error: Las relaciones 'FK_UniDroga_Drogas' y
'FK_UniDroga_Art_TipUnid' están establecidas y haciendo lo que yo quería.

Espero me entiendan y me den una solución. Realmente no entiendo el PORQUE
del error.

Saludos. Fabián.



Fabián.

Preguntas similare

Leer las respuestas

#1 Maxi
02/05/2007 - 18:22 | Informe spam
Hola, te recomiendo que este tipo de relaciones mas complejas las resuelvas
con triggers


Salu2

Microsoft MVP SQL Server
Culminis Speaker

"Fabián Tomás de Paula" escribió en el mensaje
news:%
Tengo lo siguiente:

La tabla UniDroga, tiene la siguiente estructura

ARTICULO vchar(12), DROGA int, CANTIDAD Float, UNIDAD int

Clave Principal: Articulo, Droga

El campo Droga está asociado a la tabla Drogas cuya estructura es:

CODDROGA int, DESCRIP vchar(30)

Clave Principal: CodDroga

El campo Unidad también está asociado a la tabla que se llama Art_TipUnid
que tiene la siguiente estructura:

CODIGO int, DESCRIP vchar(30)

Clave Principal: Codigo

Además está la Tabla Articulo que se relaciona con Unidroga también.
La tabla es:

IDArticulo VChar(12), Descrip 70, ... , CampoN

Clave Principal: IDArticulo


Ahora bien quiero establecer las siguientes relaciones que descritas dicen
ésto:

Que cuando cambie el código de un artículo también cambie en UniDroga,
pero
que si se intenta eliminar un artículo y está en UniDroga que no permita
dicha
eliminación;

Que cuando cambie el código de una droga también cambie en UniDroga, pero
que si se intenta eliminarla y está en UniDroga que no permita dicha
eliminación.

Que cuando cambie el código de un tipo de unidad también cambie en
UniDroga,
pero
que si se intenta eliminarla y está en UniDroga que no permita dicha
eliminación.

Sea como realice el Orden de las relaciones. Siempre la última relación a
establer
me tira el siguiente error.

La tabla 'Articulo' se guardó correctamente
Tabla 'UniDroga'
- No se puede crear la relación 'FK_UniDroga_Articulo'.
Si especifica la restricción FOREIGN KEY 'FK_UniDroga_Articulo' en la
tabla
'UniDroga', podrían producirse ciclos o múltiples rutas en cascada.
Especifique ON DELETE NO ACTION o UPDATE NO ACTION, o bien modifique otras
restricciones FOREIGN KEY.
No se pudo crear la restricción. Consulte los errores anteriores.

Para el momento de generado el error: Las relaciones 'FK_UniDroga_Drogas'
y
'FK_UniDroga_Art_TipUnid' están establecidas y haciendo lo que yo quería.

Espero me entiendan y me den una solución. Realmente no entiendo el PORQUE
del error.

Saludos. Fabián.



Fabián.




Respuesta Responder a este mensaje
#2 Fabián Tomás de Paula
02/05/2007 - 19:56 | Informe spam
Gracias! Con eso solucioné el problema.

Fabián.


"Maxi" escribió en el mensaje
news:
Hola, te recomiendo que este tipo de relaciones mas complejas las
resuelvas con triggers


Salu2

Microsoft MVP SQL Server
Culminis Speaker

"Fabián Tomás de Paula" escribió en el mensaje
news:%
Tengo lo siguiente:

La tabla UniDroga, tiene la siguiente estructura

ARTICULO vchar(12), DROGA int, CANTIDAD Float, UNIDAD int

Clave Principal: Articulo, Droga

El campo Droga está asociado a la tabla Drogas cuya estructura es:

CODDROGA int, DESCRIP vchar(30)

Clave Principal: CodDroga

El campo Unidad también está asociado a la tabla que se llama Art_TipUnid
que tiene la siguiente estructura:

CODIGO int, DESCRIP vchar(30)

Clave Principal: Codigo

Además está la Tabla Articulo que se relaciona con Unidroga también.
La tabla es:

IDArticulo VChar(12), Descrip 70, ... , CampoN

Clave Principal: IDArticulo


Ahora bien quiero establecer las siguientes relaciones que descritas
dicen
ésto:

Que cuando cambie el código de un artículo también cambie en UniDroga,
pero
que si se intenta eliminar un artículo y está en UniDroga que no permita
dicha
eliminación;

Que cuando cambie el código de una droga también cambie en UniDroga, pero
que si se intenta eliminarla y está en UniDroga que no permita dicha
eliminación.

Que cuando cambie el código de un tipo de unidad también cambie en
UniDroga,
pero
que si se intenta eliminarla y está en UniDroga que no permita dicha
eliminación.

Sea como realice el Orden de las relaciones. Siempre la última relación a
establer
me tira el siguiente error.

La tabla 'Articulo' se guardó correctamente
Tabla 'UniDroga'
- No se puede crear la relación 'FK_UniDroga_Articulo'.
Si especifica la restricción FOREIGN KEY 'FK_UniDroga_Articulo' en la
tabla
'UniDroga', podrían producirse ciclos o múltiples rutas en cascada.
Especifique ON DELETE NO ACTION o UPDATE NO ACTION, o bien modifique
otras
restricciones FOREIGN KEY.
No se pudo crear la restricción. Consulte los errores anteriores.

Para el momento de generado el error: Las relaciones 'FK_UniDroga_Drogas'
y
'FK_UniDroga_Art_TipUnid' están establecidas y haciendo lo que yo quería.

Espero me entiendan y me den una solución. Realmente no entiendo el
PORQUE
del error.

Saludos. Fabián.



Fabián.








email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida