Fórum Generator com Trigger amp; Rollback da Transação #45254

01/07/2004

0

Amigos,

Mesmo disparando o GEN_ID por uma Trigger (Before Insert), se a transação falhar, por algum motivo, e for dado Rollback pela aplicação o Generator não volta... é isso mesmo? ou estou enganado?

[]´s
Vinicius.


Vinicius2k

Vinicius2k

Responder

Posts

01/07/2004

Gandalf.nho

Correto, os generators ficam fora do contexto das transações.


Responder

Gostei + 0

01/07/2004

Vinicius2k

acho que vou continuar usando meus select max e/ou tabelas auxiliares então... :?

obrigado gandalf ! :wink:


Responder

Gostei + 0

03/07/2004

Afarias

|acho que vou continuar usando meus select max e/ou tabelas auxiliares
|então

Hummm... não aconselho! Além de menos eficiente não é seguro em ambientes c/s


T+


Responder

Gostei + 0

03/07/2004

Vinicius2k

Obrigado afarias !

Este é meu dilema... gostaria de alterar minha forma de controle sobre IDs, para uma forma mais segura, mas é inconveniente o fato de voltar a transação não influenciar no generator... tenho certeza que terei clientes reclamando a razão pela qual um número de Ordem de Serviço, por exemplo, fugiu à sequencia... não vejo como rastrear as transações em que foi dado rollback para saber de onde partiu o erro...

Pensei que, mas ainda não testei, se o GEN_ID for disparado pela aplicação, ao invés da trigger, o generator fique dentro do escopo da transação... faria sentido este teste, ou realmente, não tem solução?

T+


Responder

Gostei + 0

03/07/2004

Afarias

|Pensei que, mas ainda não testei, se o GEN_ID for disparado pela
|aplicação, ao invés da trigger, o generator fique dentro do escopo da
|transação...

NÃO. Generators não sào incrementados no escopo de uma transação -- isso é justamente o q os torna SEGUROS no ambiente C/S

:)


Quanto ao seu problema -- dependendo do tamanho e número de usuários do sistema pode não haver realmente um ´problema´ ---

--- mas o caso é q seria simples (eu acho) apenas explicar ao usuário o q é um número SEQUENCIAL e como isso funciona em uma REDE!

´Buracos´ na sequencia não são nada... não significam nada. não é realmente um ´problema´ ... que diferença faz se a próxima ordem de serviço é 128 ou 129 ?? o q isso influi no sistema ou para as pessoas q o utilizam??

;)


T+


Responder

Gostei + 0

03/07/2004

Vinicius2k

Concordo totalmente com vc ! :wink:
O difícil é fazer um cliente entender isso... :?

Quanto a número de usuários, não tenho nenhuma aplicação com mais de 20, o que me permitiu, até o momento, manter a forma atual sem ter problemas, mas precisamos evoluir sempre, não é verdade? :D

T+


Responder

Gostei + 0

03/07/2004

Afarias

mas precisamos evoluir sempre, não é verdade? :D


Concordo!
8)

T+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar