Fórum Criar Trigger para não deletar determinado registro #58975
16/10/2007
0
Gostaria de criar uma trigger para não deletar do BD um determinado usuário, alguém já fez algo parecido ? Tentei criar como segue abaixo, mas não tive sucesso:
CREATE TRIGGER TRG_USUARIO_ADMIN FOR TBL_USUARIO
ACTIVE AFTER DELETE POSITION 0
AS
DECLARE VARIABLE ACHOU VARCHAR(10);
BEGIN
SELECT LOGIN
FROM TBL_USUARIO
WHERE LOGIN = ´X´ INTO ACHOU
IF (:ACHOU IS NOT NULL) THEN
EXCEPTION ACHOU;
END;
Obrigado.
Hilton
Hilton
Curtir tópico
+ 0Posts
16/10/2007
Marco Salles
deveria ser feito com o [b:30d6b16174]Before[/b:30d6b16174]
Gostei + 0
18/10/2007
Hilton
Agora deu certo, eu não tinha criado o exception.
CREATE EXCEPTION MENSAGEM_1 ´Esse usuário não pode ser removido.´;
CREATE TRIGGER TRG_USUARIO_ADMIN FOR TBL_USUARIO
ACTIVE BEFORE DELETE POSITION 0
AS
BEGIN
IF (OLD.GRUPO_USUARIO = 1 AND OLD.LOGIN = ´X´) THEN
BEGIN
EXCEPTION MENSAGEM_1;
END
END;
Obrigado.
Hilton
Gostei + 0
18/10/2007
Marco Salles
so me parecia estar usando o [b:4de68d6580]After[/b:4de68d6580] , sendo que deveria usar o [b:4de68d6580]Before [/b:4de68d6580] , tal como fizera no segundo post...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)