Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/08/2015, 14:11
Avatar de Kursakez
Kursakez
 
Fecha de Ingreso: agosto-2015
Mensajes: 19
Antigüedad: 9 años, 3 meses
Puntos: 1
Respuesta: Cómo hago para que una FOREIGN KEY herede de PRIMARY KEY

Pero me tira error en cuanto pongo ON UPDATE CASCADE. Es que "codigo" en la tabla PRODUCTOS es una primary key que se crea a partir de una FUNCTION, esta:
Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION generaCodProd
  2.   (
  3.   w_genero        IN productos.genero%TYPE,
  4.   w_color         IN productos.color%TYPE,
  5.   w_tipo_producto IN productos.tipo_producto%TYPE  
  6.   )
  7.   RETURN VARCHAR2
  8.   IS
  9.   w_codigo productos.codigo%TYPE;
  10.   BEGIN
  11.   w_codigo:=CONCAT(SUBSTR(w_genero, 1, 1),CONCAT(SUBSTR(w_color, 1, 1),CONCAT(SUBSTR(w_tipo_producto, 1, 3),CODIGO.NEXTVAL)));
  12.   RETURN (w_codigo);
  13.   END;
  14.   /

Donde CODIGO.NEXTVAL es el valor de la secuencia definida así:

Código SQL:
Ver original
  1. CREATE SEQUENCE CODIGO MINVALUE 0 INCREMENT BY 1 START WITH 0 MAXVALUE 99999;

Entonces no sé como regularlas para que al insertar en PRODUCTOS con un CODIGO pueda insertar en IMAGENES con el mismo CODIGO, para luego poder asociarlas por los codigos.