--- Otacilio Neto <[EMAIL PROTECTED]> escreveu: > Caros > > Estou tentando dasabilitar um trigger dentro de > outro trigger. O PostgreSQL esta informando que o > usuario current user deve ser o dono do objeto, no > caso a tabela. Não tem como eu setar o trigger que > deleta o outro para quando ele for utilizado ele ter > um "suid" e se tornar o usuario pgsql para poder > desabilitar o outro trigger? > > Obrigado >
Oi pessoal! Depois de ler o que o coutinho postou sobre perguntas idiotas ou já feitas na lista fui procurar uma solução para o meu problema. No google encontrei uma discussão de uns caras que resolveram o problema de desabilitar o trigger setando o campo tgenabled em pg_trigger para FALSE. Porém na documentação do PostgreSQL em http://www.postgresql.org/docs/8.0/interactive/catalog-pg-trigger.html diz que este campo não é checado em todos os lugares onde deve ser, logo não eh uma boa ideia utiliza-lo. Para solucionar o problema utilizei o DROP TRIGGER e o CREATE TRIGGER na função que precisava desabilitar e habilitar o trigger. Para isto criei a função como SECURITY DEFINER e o negocio funcionou certinho. Acho que o bom mesmo seria criar dois procedimentos simples enable_trigger_a() e disable_trigger_a() com SECURITY DEFINER para não deixar uma função que pode ser grande e problematica com permissões do usuário pgsql. T+ _______________________________________________________ Você quer respostas para suas perguntas? Ou você sabe muito e quer compartilhar seu conhecimento? Experimente o Yahoo! Respostas ! http://br.answers.yahoo.com/ _______________________________________________ Grupo de Usuários do PostgreSQL no Brasil Antes de perguntar consulte o manual http://pgdocptbr.sourceforge.net/ Para editar suas opções ou sair da lista acesse a página da lista em: http://pgfoundry.org/mailman/listinfo/brasil-usuarios
