Functions | |
RDM_RETCODE | rdm_cursorGetMemberRows (RDM_CURSOR ownerCursor, RDM_REF_ID refId, RDM_CURSOR *pCursor) |
Associate an RDM_CURSOR with members. More... | |
RDM_RETCODE | rdm_cursorGetOwnerRow (RDM_CURSOR memberCursor, RDM_REF_ID refId, RDM_CURSOR *pCursor) |
Associate an RDM_CURSOR with a set owner. More... | |
RDM_RETCODE | rdm_cursorGetSiblingRows (RDM_CURSOR memberCursor, RDM_REF_ID refId, RDM_CURSOR *pCursor) |
Associate an RDM_CURSOR with siblings. More... | |
RDM_RETCODE | rdm_cursorGetSiblingRowsAtPosition (RDM_CURSOR memberCursor, RDM_REF_ID refId, RDM_CURSOR *pCursor) |
Associate an RDM_CURSOR with siblings. More... | |
Core cursor association API for retrieving rows in a set. All the functions here are located in RDM DB Engine Library. Linker option:
-lrdmrdm
See RDM Cursor APIs for a more detailed description of a cursor.
RDM_RETCODE rdm_cursorGetMemberRows | ( | RDM_CURSOR | ownerCursor, |
RDM_REF_ID | refId, | ||
RDM_CURSOR * | pCursor | ||
) |
#include <rdmcursorapi.h>
Associate an RDM_CURSOR with members.
This function associates the RDM_CURSOR pointed to by pCursor with a set of rows containing all the members related to the current row of ownerCursor for the set identified by refId. The resulting cursor will be positioned at BeforeFirst.
If ownerCursor is not positioned to a row that is in a table that is a valid owner of the set identified by refId an error will be returned and the RDM_CURSOR will not be associated.
ownerCursor can be any type of cursor as long as the current row of ownerCursor is a valid owner of the set identified by refId.
sOKAY | Normal, successful return. |
eNOSTARTREAD | A read operation was attempted when no rdm_dbStartSnapshot(), rdm_dbStartRead(), or rdm_dbStartUpdate() is active. |
eNOTLOCKED | Attempt to access a table for reading or update without proper locks. |
eDBNOTOPEN | Database not open. |
eNOCURRENTROW | The cursor is not positioned to a valid row. |
eOWNERDELETED | The owner row for a set cursor has been deleted. |
eSINGLETONDELETED | The row for a singleton cursor has been deleted. |
[in] | ownerCursor | The cursor for the owner row |
[in] | refId | The set identifier for the requesting set of members |
[out] | pCursor | A pointer to an RDM_CURSOR (must be allocated, associated with db, or set to NULL) |
RDM_RETCODE rdm_cursorGetOwnerRow | ( | RDM_CURSOR | memberCursor, |
RDM_REF_ID | refId, | ||
RDM_CURSOR * | pCursor | ||
) |
#include <rdmcursorapi.h>
Associate an RDM_CURSOR with a set owner.
This function associates the RDM_CURSOR pointed to by pCursor with the set owner of current row of memberCursor for the set identified by refId. The cursor will be positioned at this row. If the sourceCursor is not positioned to a valid member of the set identified by refId an error will be returned and the RDM_CURSOR will not be associated.
sOKAY | Normal, successful return. |
eNOSTARTREAD | A read operation was attempted when no rdm_dbStartSnapshot(), rdm_dbStartRead(), or rdm_dbStartUpdate() is active. |
eNOTLOCKED | Attempt to access a table for reading or update without proper locks. |
eDBNOTOPEN | Database not open. |
eNOCURRENTROW | The cursor is not positioned to a valid row. |
eOWNERDELETED | The owner row for a set cursor has been deleted. |
eSINGLETONDELETED | The row for a singleton cursor has been deleted. |
[in] | memberCursor | The cursor for the member |
[in] | refId | The set identifier for the requesting owner |
[out] | pCursor | A pointer to an RDM_CURSOR (must be allocated, associated with db, or set to NULL) |
RDM_RETCODE rdm_cursorGetSiblingRows | ( | RDM_CURSOR | memberCursor, |
RDM_REF_ID | refId, | ||
RDM_CURSOR * | pCursor | ||
) |
#include <rdmcursorapi.h>
Associate an RDM_CURSOR with siblings.
This function associates the RDM_CURSOR pointed to by pCursor with a set of rows containing all the member rows related (as members of the same owner) to the current row of memberCursor for the set identified by refId. The resulting cursor will be positioned at BeforeFirst.
If memberCursor is not at a row that is a valid member of the set identified by refId an error will be returned and the RDM_CURSOR will not be associated.
memberCursor can be any type of RDM_CURSOR as long as it's current row is a valid member of the set identified by refId.
Read lock on the member table associated with the set refId (unless memberCursor is a set cursor associated with refId) and the table owner table associated with the set refId.
sOKAY | Normal, successful return. |
eNOSTARTREAD | A read operation was attempted when no rdm_dbStartSnapshot(), rdm_dbStartRead(), or rdm_dbStartUpdate() is active. |
eNOTLOCKED | Attempt to access a table for reading or update without proper locks. |
eDBNOTOPEN | Database not open. |
[in] | memberCursor | The source cursor for the member row |
[in] | refId | The set identifier for the requested set of siblings |
[out] | pCursor | A pointer to an RDM_CURSOR (must be allocated, associated with db, or set to NULL) |
RDM_RETCODE rdm_cursorGetSiblingRowsAtPosition | ( | RDM_CURSOR | memberCursor, |
RDM_REF_ID | refId, | ||
RDM_CURSOR * | pCursor | ||
) |
#include <rdmcursorapi.h>
Associate an RDM_CURSOR with siblings.
This function associates the RDM_CURSOR pointed to by pCursor with a set of rows containing all the member rows related (as members of the same owner) to the current row of memberCursor for the set identified by refId. The resulting cursor will be positioned at the same row as memberCursor
If memberCursor is not at a row that is a valid member of the set identified by refId an error will be returned and the RDM_CURSOR will not be associated.
memberCursor can be any type of RDM_CURSOR as long as it's current row is a valid member of the set identified by refId.
Read lock on the owner table and the member table associated with the set refId.
sOKAY | Normal, successful return. |
eNOSTARTREAD | A read operation was attempted when no rdm_dbStartSnapshot(), rdm_dbStartRead(), or rdm_dbStartUpdate() is active. |
eNOTLOCKED | Attempt to access a table for reading or update without proper locks. |
eDBNOTOPEN | Database not open. |
eNOCURRENTROW | The cursor is not positioned to a valid row. |
eOWNERDELETED | The owner row for a set cursor has been deleted. |
eSINGLETONDELETED | The row for a singleton cursor has been deleted. |
[in] | memberCursor | The source cursor for the member row |
[in] | refId | The set identifier for the requested set of siblings |
[out] | pCursor | A pointer to an RDM_CURSOR (must be allocated, associated with db, or set to NULL) |