|
If you do
DECLARE CURSOR cursor FOR SELECT field ..... For UPDATE OF
field
OPEN cursor
FETCH FROM cursor ... INTO var
var = var + 1
UPDATE field = var .... WHERE CURRENT OF cursor
the row will be locked between FETCH and UPDATE at any isolation level.
Alexei Pytel
always speaking for myself
E Doc <doc6502@xxxxxxxxx>
Sent by: midrange-l-bounces@xxxxxxxxxxxx
08/08/2003 08:53 AM
Please respond to Midrange Systems Technical Discussion
To: midrange-l@xxxxxxxxxxxx
cc:
Subject: Row locks in DB2/400 UDB
All
Is there a way to lock a row in DB2/400 UDB SQL without using commitment
control?
We have a table that holds the 'next sequence number'. Whenever several
processes access the table, we end up with a scenario like:
program A accesses the table and grabs
the next counter number (counter number = 50)
program B accesses the table and grabs
the next counter number (counter number = 50)
program B adds one to the counter
number, and updates the table (counter number = 51)
program A adds one to the counter
number, and updates the table (counter number = 51)
Now, there are two transactions with an identical sequence number.
We're doing a simple select to fetch the sequence number, and we are not
using commitment control.
Any suggestions?
Thanks
-Doc
_______________________________________________
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.