Returns the dbkey of a specified record. The PLACE statement lets you determine the target page number for records that are to be loaded into the database. The PLACE statement is similar in syntax to the STORE statement. However, the PLACE statement does not actually store a record. The PLACE statement can result in significant performance improvements in database load procedures that specify the PLACEMENT VIA INDEX clause for a hashed index. Use it only with records for which a hashed index has been defined. The PLACE statement is valid only in RDO and in Callable RDO.
1 – Format
(B)0[m[4mPLACE[m q> context-var qq>[4mIN[m qqwqqqqqqqq>qqqqqqqqqwqq> relation-name qqk mq>db-handle q> . qj x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq<qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj mqq> [4mUSING[m qqqwqqqqqqqq>qqqqqqqwqqqqqqqqk mqq> on-error qqqj x lqqqqqqqqqqqqqqqqqqqqq<qqqqqqqqqqqqqqqqqj mwqwq> context-var . field-name qqq> = qqq> value-expr qqqwqqqwqqqqqk x mqqqqqqqqqqqqqqqqqqqqqqqq ; <qqqqqqqqqqqqqqqqqqqqqqqqqqj x x mqqq> context-var . * qqqqqqqqqq> = qq> record-descr qqqqqqqqj x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq<qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj mwqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq>qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqwqk tq> [4mGET[m qq> host-var qq> = qq> context-var qq> . qq> [4mRDB$DB_KEY[m qu x mq> [4mPRINT[m qqqqqqqqqqqqqqqqqqq> context-var qq> . qq> [4mRDB$DB_KEY[m qj x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq<qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj mqq> [4mEND_PLACE[m qqqqqq>
1.1 – context-var
A valid context variable.
1.2 – db-handle
A host language variable used to refer to the database.
1.3 – relation-name
The name of the relation into which the value would be stored.
1.4 – on-error
The ON ERROR clause, which specifies a host language statement or Oracle Rdb data manipulation statement to be performed if an Oracle Rdb error occurs.
1.5 – field-name
The names of the fields that appear in the index referenced in the DEFINE STORAGE MAP statement's PLACEMENT VIA INDEX clause. All index segments must be specified or the results of the PLACE statement will be of little use. Field-names not used in the index, if listed, will be ignored.
1.6 – value-expr
A valid Oracle Rdb value expression that specifies the value that would be stored.
1.7 – record-descr
A valid data dictionary record descriptor matching all the fields of the relation. You can use a host language statement to include the relation definition in your program. Each field of the record descriptor must match exactly the field names and data types of the fields in the Oracle Rdb relation referenced by the context variable.
1.8 – host-var
A user-defined host language variable, into which you may store the dbkey of the record that would be stored. Use the GET...RDB$DB_KEY construct to assign the value of the dbkey to the host language variable.
2 – More
You must have the Oracle Rdb WRITE privilege to the database and relation to use the PLACE statement.
3 – Example
The PLACE statement returns the dbkey of the specified record in the following example: RDO> PLACE E IN EMPLOYEES cont> USING E.EMPLOYEE_ID = "94789" cont> PRINT E.RDB$DB_KEY cont> END_PLACE