Re: Sequence
От | Dave Cramer |
---|---|
Тема | Re: Sequence |
Дата | |
Msg-id | 1042352782.2327.16.camel@inspiron.cramers обсуждение исходный текст |
Ответ на | Sequence (Alan Roberto Romaniuc <romaniuc@klais.com.br>) |
Список | pgsql-jdbc |
Ross, Damn, you're right. Still I prefer to get the id first, but ya, I shoulda checked. Thanks for catching that. Dave On Sun, 2003-01-12 at 00:07, Ross J. Reedstrom wrote: > On Sat, Jan 11, 2003 at 08:41:31PM -0500, Dave Cramer wrote: > > Alan, Simon, > > > > You can't do this, at least not safely. > > > > Sequences can't be rolled back and are visible across transactions. In > > other words if thread 1 inserted a row, and before you read the sequence > > thread b inserted a row, you would get the same value for both threads. > > The only way I know is to get the sequence before hand and insert it. > > The overhead is the same. > > Dave - > You really should test these things before stating with such assurance > what will happen. Yes, sequences are outside transactions, but they > _do_ honor connections. So, if your two hypothetical threads are > using seperate connections (which they _must_ do, BTW), each can use > the currval(seqname) to retrieve the value used in that connection, > regardless of what happens in the other. > > Ross -- Dave Cramer <Dave@micro-automation.net>
В списке pgsql-jdbc по дате отправления: