Fala Fábião!

Cara, eu juro que não sabia que o currval só pegava da sessão atual!

Achei que o currval pegava o valor atual da sequence independente da sessão!

Vou testar aqui...


Em 22 de abril de 2014 11:21, Fabio Prado <fbifa...@gmail.com> escreveu:

>
>
> Miltão, por favor especifique como será essa transação concorrente. Se ela
> for executada por outro usuário vc não terá problema algum, pois o CURRVAL
> da SEQUENCE é um valor de sessão.
>
> É importante entender que as transações de outros usuários não afetarão o
> CURRVAL de uma sessão que acabou de fazer o INSERT na TABLE1, se vc
> utilizar o CURRVAL logo em seguida para fazer INSERT em outra tabela, ok?
>
>
> []s
>
> *Fábio Prado*
> <http://www.fabioprado.net/2014/01/oracle-ace-o-que-e-isso.html>
> www.fabioprado.net
> "Compartilhando conhecimentos e treinando profissionais em Bancos de Dados
> Oracle"
>
>
>
> Em 22 de abril de 2014 11:10, Milton Bastos Henriquis Jr. <
> miltonbas...@gmail.com> escreveu:
>
>
>>
>> Bom dia amigos!
>>
>> Tenho um probleminha aqui... quero ver se alguém consegue me ajudar.
>>
>> A situação é a seguinte:
>>
>>  - Tenho uma tabela TABLE1.
>> Essa tabela (assim como todas as outras do sistema) tem uma trigger de
>> insert.
>>
>> A PK dessa tabela é gerada por uma sequence.
>> Isso é feito dentro da trigger - até aí tudo bem, algo bem comum de se
>> ver por aí.
>>
>>
>> O meu problema é que eu tenho um processo em que eu preciso fazer um
>> insert na tabela TABLE1 (isso numa stored procedure), e preciso do ID que
>> foi gerado
>> para ser inserido em outra tabela.
>>
>> Eu não quero pegar o CURRVAL da sequence, pois corro o risco de uma
>> transação
>> concorrente também fazer um nextval nessa sequence nesse meio tempo.
>>
>> Alguém sabe se é possível eu conseguir retornar esse valor que está sendo
>> gerado dentro da trigger?
>>
>>
>>
>  
>

Responder a