Kbase 13700: Error 223 in Oracle dataserver-RECID datatype not supported
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  5/10/1998 |
|
Error 223 in Oracle dataserver-RECID datatype not supported
Currently the RECID datatype is NOT supported in the Oracle Dataserver
becuase we use three bits to represent datatype in the schema and ALL
bit combinations are occupied.
Since it is nontrivial to add another datatype to the schema-holder;
this issue will probably not be resolved in the short term. This is
the reason RECID in Progress databases is mapped to NUMBER in Oracle
database when PROTOORA is executed.
Note: Create a table called Test in Progress version 7 database and
create a field called testfield with datatype RECID and
create an index called testindex1 on field testfield.
Run PROTOORA to add this table to a Oracle database.
Example of what does NOT work:
FIND FIRST customer.
FIND test WHERE test.testfield = recid(customer).
This returns:
** Incompatible data types in expression or assignment. (223)
Example of what WORKS:
Eg 1. DEFINE VARIABLE x AS recid.
FIND FIRST customer.
x = recid(customer).
FIND test WHERE test.testfield = x.
DISPLAY test.
Eg 2.
FOR EACH CUSTOMER:
FIND test WHERE RECID(customer) = testfield.
DISPLAY testfield.
END.
Progress Software Technical Support Note # 13700