modificar contenido de clave primaria

tema enviado por jose en ORACLE
tema iniciado el 14/03/2008

Hola a todos, soy nuevo en sql y me gustaría saber si puedo modificar el contenido

de la clave primaria de una tabla, que a su vez es clave externa en otra.

Lo he probado directamente y me da error debido a la dependencia que existe.

Las tablas son estas:

-- Tabla para guardar los pedidos que hagan a la empresa.

CREATE TABLE PEDIDOS(
CODIGO INT NOT NULL,  --Código del pedido, es clave primaria.
FECHAPEDIDO DATE,  -- Fecha en la que se hace el pedido.
FECHAENTREGA DATE,  --Fecha de entrega del pedido.
TOTAL NUMBER(10,2),  --Importe total del pedido.
ESTADO VARCHAR(10) DEFAULT 'PENDIENTE',  --Estado en el que se encuentra el pedido (ruta, entregado y pendiente), todos los los pedidos tienen el valor por defecto PENDIENTES.
CLIENTE VARCHAR(10),  --Cliente que realiza el pedido, clave externa.
PRIMARY KEY(CODIGO),
FOREIGN KEY (CLIENTE) REFERENCES CLIENTES(DNI)
);

-- Tabla en la que se guardan los productos que componen un pedido, pudiendo
-- un mismo pedido incluir dos cantidades distintas de un mismo producto,
-- con dos precios distintos.

CREATE TABLE DETALLESPEDIDOS(
PRECIO INT NOT NULL,  --Precio del producto, forma parte de la clave primaria.
CODIGOPEDIDO INT NOT NULL,  --Código del pedido, forma parte de la clave primaria.
CODIGOPRODUCTO INT NOT NULL,  --Código del producto, forma parte de la clave primaria.
CANTIDAD INT,  --Cantidad.
PRIMARY KEY(CODIGOPEDIDO,CODIGOPRODUCTO,PRECIO),
FOREIGN KEY(CODIGOPEDIDO)REFERENCES PEDIDOS(CODIGO),
FOREIGN KEY(CODIGOPRODUCTO)REFERENCES PRODUCTOS(CODIGO)
);

Quiero modificar el contenido de CODIGO en la tabla PEDIDOS, que a su vez forma parte de la clave primaria en la tabla DETALLESPEDIDOS.

Agradecería que me echarais una mano, gracias.