Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/03/2008, 10:35
jfnava
 
Fecha de Ingreso: marzo-2008
Mensajes: 3
Antigüedad: 16 años, 1 mes
Puntos: 0
Actualizar campos en oracle

Mi problema es el siguiente:

Tengo las tablas:

-- CATEGORIAS:
CREATE TABLE CATEGORIAS (
CATEGORIA VARCHAR(15) NOT NULL,
ALMACEN INT NOT NULL,
PRIMARY KEY(CATEGORIA),
FOREIGN KEY (ALMACEN) REFERENCES ALMACENES(CODALM)
);


-- PRODUCTOS:
CREATE TABLE PRODUCTOS (
CODPROD INT NOT NULL,
NOMBRE VARCHAR(15) NOT NULL,
DESCRIP VARCHAR(100) NOT NULL,
PVP NUMBER(8,2) NOT NULL,
UDS_EXISTENCIA INT DEFAULT 0 NOT NULL CHECK (UDS_EXISTENCIA >= 0),
CATEGORIA VARCHAR(15) NOT NULL,
PRIMARY KEY(CODPROD),
FOREIGN KEY (CATEGORIA) REFERENCES CATEGORIAS(CATEGORIA)
);



¿Cómo puedo cambiar en una instancia el campo CATEGORIA de la tabla CATEGORIAS y que este cambio se vea también reflejado en el campo CATEGORIA de la tabla PRODUCTOS?

Directamente (UPDATE CATEGORIAS SET CATEGORIA = ‘A’ WHERE CATEGORIA =’B’) ya sé que no se puede por la dependencia de la clave externa, ¿hay alguna otra forma de hacerlo?

La base de datos es ORACLE

gracias