Problema con disparadores(triggers) y PL/SQL

Jony c
10 de Junio del 2014
Hola,

Hasta ahora iba bien con lo que he estdiado de BBDD pero he empezado con el PL/SQL y la cosa se complica.

Tengo que hacer un subprograma y varios disparsadores y ya en el primer disparador tengo problemas a los q no encuentro solucion por ningun lado. Su objetivo es q en la tabla agentes, los campos usuarios y agentes no coincidan para ningun agente.

Este es mi disparador:

CREATE OR REPLACE TRIGGER clave_unica

BEFORE INSERT OR UPDATE OF usuario,clave

ON agentes FOR EACH ROW

WHEN clave=UNIQUE

Begin

IF new:clave IS NOT UNIQUE THEN

RAISE_APPLICATION_ERROR (-1422,'Un agente no puede coincidir en clave y usuario')

ELSIF new:usuario IS NOT UNIQUE THEN

RAISE_APPLICATION_ERROR (-1422,'Un agente no puede coincidir en clave y usuario')

END IF;

END clave_unica

/

Espero que alguien pueda echar una mano.

Gracias.