Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/06/2015, 05:16
Avatar de blueMuffin010
blueMuffin010
 
Fecha de Ingreso: mayo-2015
Ubicación: Sevilla
Mensajes: 19
Antigüedad: 9 años
Puntos: 0
Exclamación Las foreign keys no se me actualizan

Buenas, tengo un problema, estoy haciendo algo mal y no se qué es. Tengo las siguientes dos tablas:
Código SQL:
Ver original
  1. CREATE TABLE PEDIDO
  2.                   (
  3.                   FECHA_REAL DATE,
  4.                   SEC_PROVEEDOR INTEGER,
  5.                   SEC_ALBARAN INTEGER,
  6.                   SEC_FACTURA INTEGER,
  7.                   SEC_PEDIDO INTEGER,
  8.                   PRIMARY KEY(SEC_PEDIDO),
  9.                   FOREIGN KEY(SEC_PROVEEDOR) REFERENCES PROVEEDOR,
  10.                   FOREIGN KEY(SEC_ALBARAN) REFERENCES ALBARAN,
  11.                   FOREIGN KEY(SEC_FACTURA) REFERENCES FACTURA
  12.                   );


Código SQL:
Ver original
  1. CREATE TABLE LINEA_DE_PEDIDO
  2.                             (PRECIO NUMERIC,
  3.                             CANTIDAD INTEGER,
  4.                             SEC_PRODUCTO INTEGER,
  5.                             SEC_PEDIDO INTEGER,
  6.                             SEC_LINEA_DE_PEDIDO INTEGER,
  7.                             PRIMARY KEY(SEC_LINEA_DE_PEDIDO),
  8.                             FOREIGN KEY(SEC_PRODUCTO) REFERENCES PRODUCTO,
  9.                             FOREIGN KEY(SEC_PEDIDO) REFERENCES PEDIDO
  10.                             );


(Hay otras tablas pero para el caso es lo mismo) Si hago insert a ambas tablas, en las posiciones de las keys me salen todas a NULL menos la primary key (que es a la que le hago el .nextval)

Y si intento hacerlo por procedures, por ejemplo:

Código SQL:
Ver original
  1. CREATE OR REPLACE PROCEDURE hacer_pedido(PRECIO1 NUMERIC,CANTIDAD1 INTEGER) IS
  2.  
  3. BEGIN
  4.  
  5. INSERT INTO PEDIDO (FECHA_REAL,SEC_PEDIDO)
  6.        VALUES(to_date(SYSDATE,'DD/MM/RR'),SEC_PEDIDO.NEXTVAL);
  7.  
  8.  
  9. INSERT INTO LINEA_DE_PEDIDO (PRECIO,CANTIDAD,SEC_LINEA_DE_PEDIDO)
  10. VALUES (PRECIO1,CANTIDAD1,SEC_LINEA_DE_PEDIDO.NEXTVAL);
  11.  
  12.  
  13.   END;



En ambas tablas donde deberían salir las FOREIGN KEYS me sale todo a null.

No sé por qué no se actualizan ni dónde estoy fallando.

Última edición por gnzsoloyo; 20/06/2015 a las 05:54