[firebase-br] RES: Interromper um insert

Alexandre camilo em apollosistemas.com.br
Sex Abr 25 11:25:37 -03 2014


Bom, ele disse que não pode alterar a aplicação, portanto a alteração deverá
ser feita apenas no banco de dados, 
Fiquei muito curioso em como ele utilizaria uma procedure para isso sem
fazer o uso de trigger, 
Será que vocês poderiam explicar a idéia??

Alexandre Camilo.


-----Mensagem original-----
De: lista [mailto:lista-bounces em firebase.com.br] Em nome de jackson oliveira
Enviada em: sexta-feira, 25 de abril de 2014 11:03
Para: FireBase
Assunto: Re: [firebase-br] Interromper um insert

Frederico, tudo bem ?
Não utilize trigger não, pode dar mutação, ter os perigos de uma tabela sua
travar em processamento com DML... meu, se me permite, faça uma procedure
parametrizada para INSERT, UPDATE E DELETE, e se for o caso, controle por
commit e verique cada insert com um SELECT COUNT na tabela antes de um novo
insert ou update; Se desejar, entra no skype que lhe explico ( jackmosp )


Em 25 de abril de 2014 10:44, Frederico Godoi
<frederico.godoi em gmail.com>escreveu:

> Nesse caso é mais complexo.
> A aplicação está mandando um novo Insert, não seria apenas uma tentativa
de
> duplicar o registro? A chave primária não está repetindo?
> Se não está repetindo a chave primária, não sei se a trigger vai
> interromper o Insert.
>
>
> 2014-04-25 10:40 GMT-03:00 Renan Rogowski Pozzo <renanrpozzo em gmail.com>:
>
> > Bom dia Frederico,
> > a questão é que não posso mudar a aplicação, que está mandando o comando
> de
> > INSERT. Teria que tratar no banco a entrada desse dado.
> >
> > Abraço,
> > Renan Rogowski Pozzo
> >
> > *"Entrega o teu caminho ao Senhor; confia nele, e ele o fará." Salmos
> 37:5*
> >
> >
> > Em 25 de abril de 2014 10:36, Frederico Godoi
> > <frederico.godoi em gmail.com>escreveu:
> >
> > > Não seria o caso de você fazer um UPDATE OR INSERT ?
> > > Existe desde o Firebird 2.1.
> > >
> > > Frederico
> > >
> > >
> > > 2014-04-25 10:31 GMT-03:00 Renan Rogowski Pozzo <renanrpozzo em gmail.com
> >:
> > >
> > > > Bom dia,
> > > > estou com uma situação e gostaria de uma dica.
> > > >
> > > > No momento de fazer um insert em uma tabela, no caso antes de fazer
o
> > > > insert, eu precisaria verificar se o registro que está sendo
inserido
> > já
> > > > existe, e se existir não fazer o novo insert.
> > > >
> > > > Pensei em utilizar uma trigger de after insert.
> > > > Nesse caso eu não poderia usar uma exceção, pois não quero que pare
o
> > > > processo ou apresente alguma mensagem. Apenas gostaria que se
> > existisse o
> > > > registro o novo não fosse inserido, mas prosseguisse.
> > > >
> > > > Alguma sugestão?
> > > > Obrigado desde já.
> > > >
> > > > Abraço,
> > > > Renan Rogowski Pozzo
> > > >
> > > > *"Entrega o teu caminho ao Senhor; confia nele, e ele o fará."
Salmos
> > > 37:5*
> > > > ______________________________________________
> > > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> > > >
> > >
> > >
> > >
> > > --
> > > Frederico Godoi
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> > >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
>
>
>
> --
> Frederico Godoi
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista