Senhores,
tenho esta função:
CREATE OR REPLACE FUNCTION cadastro.cidade_validar_campos()
RETURNS "trigger" AS
$BODY$DECLARE
resultado INT2;
BEGIN
-- INSERT E UPDATE
IF (TG_OP='INSERT') OR (TG_OP='UPDATE') THEN
IF (CHAR_LENGTH(TRIM(NEW.nm_cidade))=0) OR (NEW.nm_cidade IS NULL) THEN
RAISE EXCEPTION 'Nome da Cidade não poderá ser nulo.';
END IF;
IF (CHAR_LENGTH(TRIM(NEW.cd_cidade))=0) OR (NEW.cd_cidade IS NULL) THEN
RAISE EXCEPTION 'Código da Cidade não poderá ser nulo.';
END IF;
END IF;
-----------------------------------------------
-- INSERT
IF (TG_OP='INSERT') THEN
-- VALIDAR O NOME DA CIDADE
SELECT COUNT(*) INTO resultado FROM cadastro.cidade WHERE
nm_cidade=NEW.nm_cidade;
IF (resultado>0) THEN
RAISE EXCEPTION 'Nome da Cidade já existe no sistema.';
END IF;
END IF;
-----------------------------------------------
-- UPDATE
IF (TG_OP='UPDATE') THEN
-- VALIDAR O NOME DA CIDADE
SELECT nm_cidade FROM cadastro.cidade WHERE nm_cidade=NEW.nm_cidade
AND cd_cidade<>NEW.cd_cidade;
IF FOUND THEN
RAISE EXCEPTION 'Nome da Cidade já existe no sistema';
END IF;
END IF;
-----------------------------------------------
-- PREENCHIMENTO DOS CAMPOS
NEW.fl_status :='S';
NEW.dt_ult_atualizacao := CURRENT_TIMESTAMP;
NEW.dt_inclusao := CURRENT_TIMESTAMP;
-----------------------------------------------
RETURN NULL;
END;$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION cadastro.cidade_validar_campos() OWNER TO sisgene;
Porém não consigo salvar os dados na tabela..
Onde poderia estar o erro??
Obrigado a todos.
--
Marcelo Moacir Florindo
Analista/Desenvolvedor
http://www.gestaotec.com.br
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral