› Fóruns › SQL e PL/SQL › disparando email através de uma trigger
- Este tópico contém 9 respostas, 3 vozes e foi atualizado pela última vez 16 anos, 2 meses atrás por
Emersonmartins.
-
AutorPosts
-
2 de março de 2010 às 9:53 pm #92905
Emersonmartins
ParticipanteOlá galera.
Como seria depois de criar uma trigger para disparar um email depois de executada uma instrução sql de update em uma tabela de funcionarios em um campo especifico como o salario.
2 de março de 2010 às 10:31 pm #92909rwarstat
ParticipanteEmerson,
Pelo que entedi, tu está querendo enviar um e-mail depois que o campo salario for atualizado, correto?
Abraço,
Roberto2 de março de 2010 às 10:47 pm #92910fsitja
ParticipanteFuja de envio de e-mail por trigger.
Imagina o que acontece em caso de rollback ou erro.
Como que você vai dar rollback no e-mail?
Faça o envio como parte do procedimento que altera o valor, uma vez commitado com sucesso, e não como “efeito colateral” na trigger da tabela.
2 de março de 2010 às 11:21 pm #92911Emersonmartins
Participanteexatamente a intenção é essa depois do commit.
2 de março de 2010 às 11:39 pm #92912fsitja
Participante[quote=”Emersonmartins”:tvgxsw1z]exatamente a intenção é essa depois do commit.[/quote]
Então não seria através de trigger, pois a trigger executa durante a operação, e não há garantias de que ela terminará. E, mesmo assim, uma transação não é composta de um DML só.
2 de março de 2010 às 11:44 pm #92913Emersonmartins
ParticipanteAgardeço o esclarecimento.
Mas bom..senao posso atraves de trigger..o que vc me indica no momento?:2 de março de 2010 às 11:59 pm #92914rwarstat
ParticipanteEmerson,
Seguindo o raciocinio do Fsitja, o quê poderia ser feito é atualizar a(s) coluna(s) que tu precisar e após ter a confirmação que ocorreu tudo bem, sem erros, disparar um procedimento que faz o envio do e-mail.
Abraço,
Roberto3 de março de 2010 às 12:08 am #92917Emersonmartins
ParticipanteCerto.O que eu quero realmente é entender como funciona o disparo desse email para eu poder implementar numa atualização de dados entre bancos de filiais diferentes
Sds
Emerson Martins
3 de março de 2010 às 12:30 am #92918rwarstat
ParticipanteEmerson,
Se tu tiver um procedure no banco que faça o envio de e-mails, pode chamar ela após o commit com sucesso da tua atualziação. Ou pode usar alguma rotina pronta na linguagem que tu está usando. Essa é uma decisão tua.
Rotinas em PL/SQL para envio de e-mail existem em razoável quantidade pela rede, é só procurar um pouco. Dependendo da linguagem que tu está usando, pode ser fácil achar uma rotina ou componente para fazer isso.
Abraço,
Roberto3 de março de 2010 às 7:49 pm #92934Emersonmartins
ParticipanteUso somente o PLSQl mesmo..vou dar uma analisa.
Mesmo assim obrigadão a todos pela ajuda!
-
AutorPosts
- Você deve fazer login para responder a este tópico.
› Fóruns › SQL e PL/SQL › disparando email através de uma trigger