| SQL programming / SQL portability | |
Automatic ROWIDs is not a common database feature.
Rowids are implicit primary keys generated by the database engine. Not all database servers support rowids:
| Database Server Type | Rowid keyword? | Rowid type? | 
|---|---|---|
| Genero db | ROWID | INTEGER | 
| IBM® DB2® UDB | none | none | 
| IBM Informix® (1) | ROWID | INTEGER | 
| Microsoft™ SQL Server (2) | none | none | 
| MySQL | none | none | 
| Oracle Database Server | ROWID | CHAR(18) | 
| PostgreSQL | OID | internal type | 
| Sybase ASE | none | none | 
| SQLite | ROWID | BIGINT | 
Informix fills the SQLCA.SQLERRD[6] register with the ROWID of the last updated row. This register is an INTEGER and cannot be filled with rowids having CHAR(*) type.
Search for ROWID and SQLCA.SQLERRD[6] in your code and review the code to remove the usage of rowids.