Buenas, tengo un problema, estoy haciendo algo mal y no se qué es. Tengo las siguientes dos tablas:
Código SQL:
Ver originalCREATE 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 originalCREATE 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 originalCREATE 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.