Reference/es_mbi_findremoveidx
Syntax
int es_mbi_findremoveidx( struct es_mbi *iter, struct es_mbn *nd );
Arguments
struct es_mbi *iter |
Database node iterator. |
struct es_mbn *nd |
Database node. |
Return Codes
ES_ERROR_NONE |
Success. No errors. |
ES_ERROR_INVALIDBINDING |
The field-binding associated with iter is for a class that is not the same (or a valid super class) as that of the node nd . |
ES_ERROR_MISSINGINDEX |
The field-binding associated with iterator iter is missing bindings for the index fields. |
ES_ERROR_FAILTOFIND |
Failed to lookup row corresponding to index field values. |
Description
Look up row in database node nd and update row contents. Remove row from index. Set iterator to point at row.
The field-binding associated with iterator iter must contain bindings by-value for each field that makes-up the index for node nd . es_mbi_findremoveidx() uses these field values to look up the corresponding row in nd and then updates row-data for the remaining field bindings.
If the row cannot be found, es_mbi_findremoveidx() returns ES_ERROR_FAILTOFIND . iter is left in an undefined state in this case.
A new row added to the same node via es_mbi_findupdate() following a call to es_mbi_findremoveidx() is not guaranteed to be zero-initialized, since the old (deleted) row may be re-used.
[Back To Reference]
[Back To Reference/es_mbi]
|