James,
I'm not sure about the locking, but I believe you can retrieve the rrn by
select rrn(MYFILE) from MYFILE
or to select a specific rrn
SELECT field1, field2 FROM MYFILE WHERE rrn(MYFILE) = 1
-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of James H. H. Lampert
Sent: Friday, December 28, 2012 1:54 PM
To: 'Midrange Systems Technical Discussion'
Subject: Uniquely identifying a record in SQL without a unique key?
I'm beginning to study Scott Klement's JDBCR4 API, as a means of extending our QuestView product to access external databases (and it would also allow us to expand our very limited support of data types that are normally SQL-only), and something suddenly struck me:
Suppose I'm looking at a record, and I decide to make a change to it.
And the file isn't uniquely keyed.
Now, with native RLA, we can easily determine the RRN of the record we're looking at, and acquire an update lock on that record by its RRN.
After all, RRNs only change if a RGZPFM is done, and that requires an exclusive lock on the member.
But now, suppose I have to use SQL, JDBC, and the JDBCR4 API. I'm no expert on SQL (SQL for Dummies is still my primary reference on the subject), but I don't recall ever reading anything anywhere about a way to get a record's RRN, or retrieve a record by its RRN, from SQL.
I must be missing *something* here, but what? How do I guarantee that an update will go to the right record, when I initially read it without a lock, and apparently can't grab a lock on it by its RRN?
--
JHHL
--
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.
NOTICE: This message, including any attachment, is intended as a confidential and privileged communication. If you have received this message in error, or are not the named recipient(s), please immediately notify the sender and delete this message.
As an Amazon Associate we earn from qualifying purchases.