on update cascade...

21/04/2004 - 02:45 por Chente | Informe spam
Que tal...

son las 8:00 de la noche y creo que ya no doy para mas, por eso acudo a
ustedes, ya cheque las BOL, pero solo que no le veo por donde, me imagino
que para uds. es sencillo, asi que aqui va.

tengo varias tablas, pero para explicarme solo pondre 3...

proveedor
prclave prnombre
AA01 Pato
AA02 Peto

Tablita
prclave Reporte
AA01 23423
AA01 34534
AA02 34444
AA02 45645
AA02 34534
AA01 55344

Tablota
prclave Color
AA01 Rojo
AA02 Amarillo
AA02 Azul

Ahora bien, tengo declarada ForeingKey entre Proveedor-Tablita y
Proveedor-Tablota.

Quiero actualizar el campo de prclave en la tabla de proveedor y que se me
actualize en cascada las demás tablas, puedo ponerlo desde el administrador
corporativo, y funciona a la perfección, pero lo necesito desde código, asi
que esto es lo que he estado haciendo:

alter table proveedor alter FK_TABLITA_PROVEEDOR on update cascade

pero me arroja el siguiente error:

Servidor: mensaje 156, nivel 15, estado 1, línea 1
Sintaxis incorrecta cerca de la palabra clave 'on'.

otra pregunta mas, ¿por cada relacion tengo que poner el alter table?

Espero me puedan ayudar, gracias por la atención y saludos.


Chente.
 

Leer las respuestas

#1 Hermilson
21/04/2004 - 13:43 | Informe spam
Hola.

Lo que sucede es que tu debes eliminar y volver a crear la
FK, algo similar al ejemplo que te adiciono aquí. En
respuesta a la segunda pregunta, según la sintaxis que te
envío es necesario escribir un ALter por cada FK.

ALTER TABLE tbl
DROP CONSTRAINT FK_tblCircularEntes_tblCirculares
GO

BEGIN TRANSACTION
ALTER TABLE tbl WITH NOCHECK ADD CONSTRAINT
FK_TABLITA_PROVEEDOR FOREIGN KEY
(
intCod
) REFERENCES proveedor
(
intCodprov
) ON UPDATE CASCADE
ON DELETE CASCADE
GO

Hermilson T.

Que tal...

son las 8:00 de la noche y creo que ya no doy para mas,


por eso acudo a
ustedes, ya cheque las BOL, pero solo que no le veo por


donde, me imagino
que para uds. es sencillo, asi que aqui va.

tengo varias tablas, pero para explicarme solo pondre 3...

proveedor
prclave prnombre
AA01 Pato
AA02 Peto

Tablita
prclave Reporte
AA01 23423
AA01 34534
AA02 34444
AA02 45645
AA02 34534
AA01 55344

Tablota
prclave Color
AA01 Rojo
AA02 Amarillo
AA02 Azul

Ahora bien, tengo declarada ForeingKey entre Proveedor-


Tablita y
Proveedor-Tablota.

Quiero actualizar el campo de prclave en la tabla de


proveedor y que se me
actualize en cascada las demás tablas, puedo ponerlo


desde el administrador
corporativo, y funciona a la perfección, pero lo necesito


desde código, asi
que esto es lo que he estado haciendo:

alter table proveedor alter FK_TABLITA_PROVEEDOR on


update cascade

pero me arroja el siguiente error:

Servidor: mensaje 156, nivel 15, estado 1, línea 1
Sintaxis incorrecta cerca de la palabra clave 'on'.

otra pregunta mas, ¿por cada relacion tengo que poner el


alter table?

Espero me puedan ayudar, gracias por la atención y


saludos.


Chente.


.

Preguntas similares