DECLARE
usuario_bd VARCHAR2(40);
CURSOR usuarios IS SELECT in_char FROM params WHERE in_fichero = 'U' AND in_codigo LIKE 'ACT_USUBD%';
BEGIN
OPEN usuarios;
LOOP
fetch usuarios into usuario_bd;
EXIT WHEN usuarios%NOTFOUND;
IF usuario_bd = 'A' THEN
BEGIN
INSERT INTO "A"."ATRIBUTO" (UNO, D0S, TRES, CUATRO)
VALUES (:NEW.UNO, :NEW.DOS, :NEW.TRES, :NEW.CUATRO);
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN NULL;
WHEN OTHERS THEN NULL;
END;
END IF;
IF usuario_bd = 'B' THEN
BEGIN
INSERT INTO "B"."ATRIBUTO" (UNO, DOS, TRES, CUATRO)
VALUES (:NEW.UNO, :NEW.AT_DOS, :NEW.TRES, :NEW.CUATRO);
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN NULL;
WHEN OTHERS THEN NULL;
END;
END IF;
IF usuario_bd = 'C' THEN
BEGIN
INSERT INTO "C"."ATRIBUTO" (UNO, DOS, TRES, CUATRO)
VALUES (:NEW.UNO, :NEW.DOS, :NEW.TRES, :NEW.CUATRO);
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN NULL;
WHEN OTHERS THEN NULL;
END;
END IF;
IF usuario_bd = 'D' THEN
BEGIN
INSERT INTO "D"."ATRIBUTO" (UNO, DOS, TRES, CUATRO)
VALUES (:NEW.UNO, :NEW.DOS, :NEW.TRES, :NEW.CUATRO);
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN NULL;
WHEN OTHERS THEN NULL;
END;
END IF;
END LOOP;
CLOSE usuarios;
END ;
Como ves lo que quiero hacer es que cuando inserten en una base de datos, copiarlo a otras cuatro, pero en cada tabla atributos me da el mismo error.
Número de Línea = 13 Número de Columna = 27 Texto de Error = PL/SQL: ORA-00942: la tabla o vista no existe
Número de Línea = 13 Número de Columna = 3 Texto de Error = PL/SQL: SQL Statement ignored
Número de Línea = 23 Número de Columna = 23 Texto de Error = PL/SQL: ORA-00942: la tabla o vista no existe
Número de Línea = 23 Número de Columna = 3 Texto de Error = PL/SQL: SQL Statement ignored
Número de Línea = 33 Número de Columna = 25 Texto de Error = PL/SQL: ORA-00942: la tabla o vista no existe
Número de Línea = 33 Número de Columna = 3 Texto de Error = PL/SQL: SQL Statement ignored
Número de Línea = 43 Número de Columna = 26 Texto de Error = PL/SQL: ORA-00942: la tabla o vista no existe
Número de Línea = 43 Número de Columna = 3 Texto de Error = PL/SQL: SQL Statement ignored
Un saludo.