Olá, Eu até pensei em fazer isso mas não achei o mais adequado.. queria com o tratamento de erros do próprio PostgreSQL.
[]s 2008/7/29 Joao Cosme de Oliveira Junior <[EMAIL PROTECTED]> > João pq nao faz um select into variavel count(*)from pg_user where > usename = ?? > > e verifica com um if?? > > > > > Olá, pessoal > > > > Tudo bem com vocês? Ando meio sumido pela correria, mas achei um problema > > interessante e acho legal postar aqui para discutirmos. > > > > 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. > > > > Gostaria de saber se alguém já passou por algum problema similar ou tem > > alguma idéia do que pode acontecer. Foi testado nas versões 8.1.9, 8.2.7 > e > > 8.3.1. > > > > Abaixo esta o código da minha function. > > > > 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 'erro'; > > null; > > END; > > END; > > $$ language plpgsql; > > > > []s > > > > -- > > 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 > > > > > _______________________________________________ > 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
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
