Olá, Euler Por acaso essa exceção realmente estaria implementada?
[]s 2008/7/30 jota. comm <[EMAIL PROTECTED]> > Olá, Euler > > Grato pela dica. Eu só fiquei sem entender porque eu não consigo fazer a > validação pelo usuário inválido através de invalid_role_specification. > > []s > > > 2008/7/30 Euler Taveira de Oliveira <[EMAIL PROTECTED]> > > jota.comm escreveu: >> > Vamos ao problema: Estou desenvolvmendo uma function para dar permissão >> > a um determinado usuário, porém quero fazer um tratamento de exceção >> > caso o usuário não exista não gere uma mensagem de erro. >> > >> > Pensando logicamente minha idéia era usar o error code: >> > invalid_role_specification, porém não funcionou e o mesmo não cai no >> > tratamento da exceção, a única maneira de resolver foi usando: >> > syntax_error_or_access_rule_violation, que para mim não faz muito >> sentido. >> > >> O que você precisa é undefined_object. Vale lembrar que >> syntax_error_or_access_rule_violation é uma classe de erros, ou seja, >> ela retorna verdadeiro para qualquer erro que pertença a sua classe. Se >> você quiser ser mais específico evite as classes XX000; ao invés disso, >> utilize um código de erro específico. Utilize as variáveis sqlstate e >> sqlerrm para descobrir os códigos de erro específicos. >> >> CREATE OR REPLACE FUNCTION foo(text) RETURNS void AS $$ >> BEGIN >> BEGIN >> EXECUTE 'GRANT SELECT ON teste TO ' || $1; >> EXCEPTION WHEN syntax_error_or_access_rule_violation THEN >> RAISE NOTICE 'sqlstate: %; sqlerrm: %', sqlstate, sqlerrm; >> END; >> END; >> $$ language 'plpgsql'; >> >> >> -- >> Euler Taveira de Oliveira >> http://www.timbira.com/ >> _______________________________________________ >> pgbr-geral mailing list >> [email protected] >> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >> > > > > -- > João Paulo > www.dextra.com.br/postgres > PostgreSQL > -- João Paulo www.dextra.com.br/postgres PostgreSQL
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
