VX/RDO
Rdb/RDO (RDML) to Rdb/SQL Migration
VX/RDO is currently offered as an in-house service to convert embedded RDO (RDML) to SQL. Sector7 can convert RDO embedded in the following source languages:
- COBOL
- BASIC
- FORTRAN
- C
- PASCAL
The RDO is converted into SQL modules (SQLMOD) and the original RDO left in place as comments. The process is approximately 75% to 85% automatic, leaving some manual effort to complete the port. Once converted into SQLMOD, the code can be ported to:
- ORACLE
- SYBASE
- INGRESS
- INFORMIX
Sector7 has developed a set of tools and processes that facilitate altering OpenVMS source code embedded with Rdb/RDO (RDML) to make it SQL compliant. All of the RDO statements are replaced with standard SQL commands and all RDO product-specific issues are dealt with. Error code replacement is also an issue that is handled during this conversion stage.
RDO Product Specific Issues
[Note: all of the mentioned issues are illegal within a standard SQL environment]
- RDO allows character data to be inserted into numeric data type table elements
- RDO allows numeric data to be inserted into character data type table elements
- RDO allows data to be retrieved into EDIT STRINGS
- RDO allows NULLs to be retrieved during a record FETCH
- RDO does not care if a user re-opens a cursor even if that cursor has already been opened already
VAX Rdb/RDO Command Set vs. VAX Rdb/SQL Cross Reference
| VAX Rdb/RDO Command Set | VAX Rdb/SQL | |
| RDO | SQL | |
| AT END | IF SQLCODE=SQLCODE_EOS | |
| DECLARE TRANSACTION | SET TRANSACTION | |
| FETCH/GET | FETCH INTO | |
| INVOKE DATABASE | DECLARE DATABASE | |
| ON ERROR | IF SQLCODE<SQLCODE_SUCCESS | |
| MODIFY | UPDATE | |
| REMOVE | DELETE | |
| START STREAM | DECLARE/OPEN CURSOR | |
| STORE | INSERT |

