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? >> >> >> > >