Código SQL:
Ver original
CREATE TABLE PEDIDO ( FECHA_REAL DATE, SEC_PROVEEDOR INTEGER, SEC_ALBARAN INTEGER, SEC_FACTURA INTEGER, SEC_PEDIDO INTEGER, PRIMARY KEY(SEC_PEDIDO), FOREIGN KEY(SEC_PROVEEDOR) REFERENCES PROVEEDOR, FOREIGN KEY(SEC_ALBARAN) REFERENCES ALBARAN, FOREIGN KEY(SEC_FACTURA) REFERENCES FACTURA );
Código SQL:
Ver original
CREATE TABLE LINEA_DE_PEDIDO (PRECIO NUMERIC, CANTIDAD INTEGER, SEC_PRODUCTO INTEGER, SEC_PEDIDO INTEGER, SEC_LINEA_DE_PEDIDO INTEGER, PRIMARY KEY(SEC_LINEA_DE_PEDIDO), FOREIGN KEY(SEC_PRODUCTO) REFERENCES PRODUCTO, FOREIGN KEY(SEC_PEDIDO) REFERENCES PEDIDO );
(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
CREATE OR REPLACE PROCEDURE hacer_pedido(PRECIO1 NUMERIC,CANTIDAD1 INTEGER) IS BEGIN INSERT INTO PEDIDO (FECHA_REAL,SEC_PEDIDO) VALUES(to_date(SYSDATE,'DD/MM/RR'),SEC_PEDIDO.NEXTVAL); INSERT INTO LINEA_DE_PEDIDO (PRECIO,CANTIDAD,SEC_LINEA_DE_PEDIDO) VALUES (PRECIO1,CANTIDAD1,SEC_LINEA_DE_PEDIDO.NEXTVAL); 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.