Static FIND cursor repositioning
- Last Updated: March 30, 2020
- 1 minute read
- OpenEdge
- Version 12.2
- Documentation
Static FIND cursor repositioning
With the DataServer, cursor repositioning will work
with an Oracle database the same as it does with ABL, except when
the Oracle Database Manager fails to find a record. In ABL, the
cursor is located after the last record that was read. In Oracle,
a failed search does not affect the cursor. For example, if a cursor
is positioned at custnum 50 and a request to find customer "smith"
in an Oracle table fails, the cursor remains at custnum 50.
The same failed request from an ABL table places the cursor after
the last customer read trying to find customer "smith."
The DataServer repositions only cursors used by FIND NEXT/PREV/CURRENT statements.
Cursors are never repositioned for FOR EACH statements,
new queries, or dynamic FINDs. When the DataServer
instructs the Oracle RDBMS to perform a join (JOIN-BY-SQLDB),
the cursor that the join uses does not reposition other cursors
in use by the query. The cursor for DEFINE QUERY or
dynamic FIND statements does not reposition cursors
in other queries.