Salve galera! Tou com a necessidade de criar uma trigger para verificar de a quantidade de jogos numa tabela é menor ou igual a 6. Se for maior que 6, o insert não deve ser efetuado.
Estou tentando criar a seguinte trigger para realizar essa tarefa: CREATE FUNCTION verifica_6_partidas() RETURNS trigger AS $$ BEGIN SELECT COUNT(*) AS TOTAL_JOGOS_ANDAMENTO FROM "Partida" WHERE "Fim" IS NULL AND ("Jogador1" = NEW.Jogador1 OR "Jogador2" = NEW.Jogador2) IF ("TOTAL_JOGOS_ANDAMENTO" = 6) THEN RAISE EXCEPTION 'O jogador possui 6 partidas em andamento. Não foi possível prosseguir esta operação!'; END IF; END; $$ LANGUAGE internal CREATE TRIGGER "trigger_verifica_6_partidas" BEFORE INSERT ON "public"."Partida" FOR EACH STATEMENT EXECUTE PROCEDURE "verifica_6_partidas"(); A mensagem de erro que é retornada é a seguinte: * ERROR: there is no built-in function named " SELECT COUNT(*) AS TOTAL_JOGOS_ANDAMENTO FROM "Partida" WHERE "Fim" IS NULL AND ("Jogador1" = NEW.Jogador1 OR "Jogador2" = NEW.Jogador2) IF ("TOTAL_JOGOS_ANDAMENTO" = 6) THEN RAISE EXCEPTION 'O jogador possui 6 partidas em andamento. Não foi possível prosseguir esta operação!';* Alguem ai sabe o que pode estar acontecendo? Onde estou errando ? -- Atenciosamente, Leonardo Barbosa
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral