[firebase-br] RES: RES: Garantir uso de Trigger

Gabriel Bonzanini gabriel.bonzanini em gmail.com
Qui Nov 8 19:32:25 -03 2018


A função da trigger é justamente exexecutar seu código no momento definido.
Não precisa fazer nada para garantir que ela vá ser executada se a mesma
estiver ativa.

Em qui, 8 de nov de 2018 19:31, Gabriel Bonzanini <
gabriel.bonzanini em gmail.com escreveu:

> Olha, a não ser que o banco de dados esteja corrompido, a trigger
> executará SEMPRE ao inserir registros. A questão é: não existe nenhum ponto
> do seu código que atualize (através de UPDATE) dados dessa tabela?
>
> Em qui, 8 de nov de 2018 15:34, rodrigo <firebase em dominioinf.com.br
> escreveu:
>
>> Boa tarde Gabriel,
>>
>> No meu projeto, cada vez que der um Insert
>> Ele tem que preencher o campo Ordem e DataHora.
>> Testando aqui na minha base de dados, fazendo vários inserts, ta
>> Funcionando normal. Mas no cliente, verificando, ficou vários para tras.
>>
>> A principio, parece que o insert foi realizado e a trigger não executou.
>>
>> Mas seria sempre que houvesse um insert, não update.
>>
>> Grato
>>
>>
>>
>> Enviado do Email para Windows 10
>>
>> De: Gabriel Bonzanini
>> Enviado:quinta-feira, 8 de novembro de 2018 14:54
>> Para: FireBase
>> Assunto: Re: [firebase-br] RES: Garantir uso de Trigger
>>
>> Boa tarde.
>>
>> Ao meu ver, o que estaria faltando é um tratamento para UPDATE. Se você
>> der
>> um update setando o campo com NULL (propositalmente ou não dentro do
>> sistema), o banco de dados irá assumir esse valor. Você pode assinalar o
>> campo como NOT NULL e executar alguns testes para identificar em qual
>> momento o sistema está executando esta ação.
>>
>> Em qui, 8 de nov de 2018 13:16, rodrigo <firebase em dominioinf.com.br
>> escreveu:
>>
>> > Esqueci de mencionar um detalhe,
>> >
>> > Na verdade, de em torno de 5000 registros, 130 registros ficaram nulos,
>> >
>> > Não foram todos.
>> >
>> > Grato
>> >
>> > Enviado do Email para Windows 10
>> >
>> > De: rodrigo
>> > Enviado:quinta-feira, 8 de novembro de 2018 12:43
>> > Para: FireBase
>> > Assunto: [firebase-br] Garantir uso de Trigger
>> >
>> > Boa tarde a todos
>> >
>> > Tenho essa trigger que me ajuda a manter um controle de estoque por
>> > movimentação
>> >
>> > CREATE TRIGGER TR_ORDEM_ITENS FOR ITENS
>> > ACTIVE BEFORE INSERT POSITION 0
>> > AS
>> > BEGIN
>> > NEW.ORDEM = GEN_ID(GEN_ORDEM, 1);
>> > NEW.DATAHORA=CURRENT_TIMESTAMP;
>> > END
>> > ;
>> >
>> >
>> > Pela teoria, teria que preencher esses dois dados assim que executado um
>> > insert.
>> >
>> > Mas avaliando um erro na soma do estoque, percebi que esses campos que
>> > Deveriam ser preenchidos por essa trigger, estão nulos.
>> >
>> > Estou fazendo algo errado com essa trigger? Tem como garantir a
>> execução.
>> >
>> > Grato
>> >
>> >
>> >
>> >
>> >
>> > ---
>> > Este email foi escaneado pelo Avast antivírus.
>> > https://www.avast.com/antivirus
>> > ______________________________________________
>> > 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://www.firebase.com.br/pesquisa_lista.html
>> >
>> > ______________________________________________
>> > 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://www.firebase.com.br/pesquisa_lista.html
>> >
>> ______________________________________________
>> 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://www.firebase.com.br/pesquisa_lista.html
>>
>> ______________________________________________
>> 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://www.firebase.com.br/pesquisa_lista.html
>>
>



Mais detalhes sobre a lista de discussão lista