Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
On delete cascade y On update cascade
Enviado por inmadgm el día 7 de marzo de 2005
Hola,
Tengo la siguiente tabla:
create table zonas_gestion (
id_zona_gestion number(8)primary key using index,
nombre_zona_gestion varchar2(50),
descrip_zona_gestion varchar2(200),
id_gerente number(8) references gerentes on delete cascade on update cascade
);
pero me da un error:
id_gerente number(8) references gerentes on delete cascade on update cascade
*
ERROR en línea 5:
ORA-00907: falta el paréntesis derecho
Supongo que será la forma de poner el delete y el update. ¿cómo se pondría?
Gracias!!.
Eso será en tu pueblo. En Oracle city NO SE PUEDE.
Tienes que montar codigo pl-sql, por ejemplo en un trigger para que cuando se actualize un registro de una tabla, actualize todos los registros que dependen de ese.
¿ que te ponga como ? TE LO INVENTAS
Bueno, yo soy de la opinion de ozzy, pero solo en el punto 2.
Puedes crear una FK en la misma sentencia sql así:
create table zonas_gestion (
id_zona_gestion number(8) primary key,
nombre_zona_gestion varchar2(50),
descrip_zona_gestion varchar2(200),
id_gerente number(8) references gerentes on delete cascade );
Pero estoy de acuerdo con la parte 1 de ozzy, no he encontrado en ningún sitio como decirle ON UPDATE CASCADE, En designer si que se le puede decir, pero lo implementa él en PL/SQL cuando genera el form (creo)
Por cierto, se me habia olvidado, para que sirve el USING INDEX en "id_zona_gestion number(8) primary key using index,"?
Da igual que lo ponga como que no, al final siempre se crea un indice para la PK. (uso 9.2.0.1)
Re: Re: Re: Re: Re: On delete cascade y On update cascade
Enviado por ozzy el día 8 de marzo de 2005
Existe un proceso en PL-SQL creado creo que por Oracle para esos updates en cascada ( No de las del compañero Grillo ).
Entra en el google y pon ON UPDATE CASCADE y encontraras ese código pl-sql