Try OpenEdge Now
skip to main content
DataServer for Oracle
Upgrading DataServer Applications : Manually adding PROGRESS_RECID to Oracle
 

Manually adding PROGRESS_RECID to Oracle

If you have an existing Oracle database, and you wish to take advantage of FIND PREV/LAST statements and cursor repositioning in an OpenEdge application for this database, you must manually add the PROGRESS_RECID.
To manually add PROGRESS_RECID to the Oracle database:
1. Using SQL*Plus, log in as the Oracle user who owns the table.
2. Create a sequence generator for the table named table-name_SEQ. Start with 1 and increment by 1, as shown:
CREATE SEQUENCE
table-name
_SEQ START WITH 1 INCREMENT BY 1;
3. Add a column to the table named progress_recid. This column holds a number that can be null. For example:
ALTER TABLE table-name ADD (progress_recid number null);
4. Update the table and set the progress_recid using table-name_SEQ.nextval, as shown:
UPDATE table-name SET progress_recid = table-name_SEQ.nextval;
5. Create a unique index name, table-name##progress_recid, that consists of just the progress_recid column, as shown:
CREATE UNIQUE INDEX table-name##progress_recid ON
table-name (progress_recid);
6. Drop every non-unique index from the table and recreate it using the same components. Add progress_recid as the last component, as shown:
DROP INDEX table-name##index-name;
CREATE INDEX table-name##index-name ON table-name
(column-name, progress_recid);
7. Verify that the sequence was created. For example:
SELECT table-name_SEQ FROM sys.dual;
8. Connect to Oracle and use the Data Dictionary's Oracle utilities to update the schema holder.