The moose likes JDBC and Relational Databases and the fly likes Determined identity key value Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » JDBC and Relational Databases
Bookmark "Determined identity key value" Watch "Determined identity key value" New topic
Author

Determined identity key value

Sub swamy
Ranch Hand

Joined: Oct 02, 2002
Posts: 121
Is there any way (programmatically or otherwise) to determine the current value of identity key column in DB2 database.

I cannot afford to insert new records in the table for this verification.
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 44006
    
  33
select max(id) from my_table???
Sub swamy
Ranch Hand

Joined: Oct 02, 2002
Posts: 121
When a data load is done - the max value of the identity key column and the identity key may not be the same. So a SELECT MAX() FROM TABLENAME may not always give the correct value.
Scott Selikoff
author
Saloon Keeper

Joined: Oct 23, 2005
Posts: 3740
    
  10

Off hand you can't. For example, let's say the ID is 5. Now, you insert a record incrementing it to 6. Immediately after the insert, you delete the record.

In this case the current value is 6 but you've deleted the record so max will still return 5. Granted in most database systems its better to disable records by setting some "enable" field to OFF, rather than ever actually deleting data.


[OCA 8 Book] [Blog]
 
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com
 
subject: Determined identity key value
 
jQuery in Action, 3rd edition