Oii gente, to tentando fazer duas funções em sql, uma para inserir um usuario, verificando se o mesmo ja existe e outra que atualiza a password dele, acusando tb se errar algum campo, mas não to conseguindo:
Obrigadaa!
Inserir:
[code]CREATE OR REPLACE FUNCTION inserir_usuario (varchar(30), varchar(10), varchar(20), varchar(8))
RETURNS varchar AS
$body$
DECLARE
existe integer;
ecount integer;
BEGIN
existe:=0;
SELECT count(*) INTO ecount FROM Usuario WHERE nick_u=$2 OR email_u=$3;
if existe=0 then
INSERT INTO Usuario (nome_u, nick_u, email_u, pass_u) VALUES ($1,$2,$3,$4);
RETURN $4;
else
existe:=1;
RAISE NOTICE ‘ja existe’;
end if;
END;
$body$
LANGUAGE ‘plpgsql’;[/code]
alterar usuario:
CREATE OR REPLACE FUNCTION atualizar_usuario (varchar(30), varchar(10), varchar(20), varchar(8))
RETURNS integer AS
$body$
DECLARE
existe integer;
ecount integer;
BEGIN
existe:=0;
SELECT count(*) INTO ecount FROM Usuario WHERE nome_u=$1 AND nick_u=$2 AND email_u=$3;
if existe = 0 then
UPDATE Usuario
SET pass_u = $4
WHERE nome_u=$1 AND nick_u=$2 AND email_u=$3;
return $4;
else
existe:=1;
raise notice 'erro';
end if;
END;
$body$
LANGUAGE 'plpgsql';