Try OpenEdge Now
skip to main content
DataServer for Microsoft SQL Server
RDBMS Stored Procedure Details : ROWID Support : ROWID characteristics
 

ROWID characteristics

The ROWID value is not stored directly in the MS SQL Server data source, but it is represented by a unique index key in your database. If you migrated your database to a MS SQL Server and elected to use the Create RECID Field option during the migration, a unique 8-byte integer column named PROGRESS_RECID and a corresponding seed column named PROGRESS_RECID_IDENT will have been automatically generated in your database tables along with a corresponding Index containing the PROGRESS_RECID value as its key.
Note: While the PROGRESS_RECID_IDENT column is not used to resolve the ROWID value, it is important to recognize the presence of this column for purposes of the following discussion. (This point is especially significant because its physical presence is unknown to the schema holder definition that represents this table to the client.)
Databases that are only pulled from the native environment or are migrated without the Create RECID Field option must choose a unique index key from each table to represent the PROGRESS_RECID to support the RECID and ROWID functions, and forward and backward scrolling within their ABL sessions. ABL will internally map the selected unique key to the Progress RECID and ROWID functions.
Note: Reposition functions such as REPOSITION-BACKWARDS and REPOSITION-TO-ROW typically use ROWID to identify records and functions of this type require integer expressions which, beginning with OpenEdge Release 10.1B, can be either INTEGER or INT64.
It is important to note that the unique index key used to derive the Progress ROWID must be a single component index for it to map to the ROWID of a temp-table as described in the following discussion. For more details, see the ROWID function discussion in Initial Programming Considerations.
Starting in OpenEdge Release 10.1B, the default external representation of ROWID enables the MS SQL Server DataServer to use a 64-bit integer value for ROWID. Also, before discussing ROWID as it relates to the RUN STORED-PROC statement, it is important to understand an important property of the OpenEdge ROWID. For information see ROWID: Standard ABL behavior.
* ROWID: Standard ABL behavior