DbMultipleDataIterator
Prev | Chapter 4. The Dbt Handle | Next

## DbMultipleDataIterator

    #include <db_cxx.h>

    class DbMultipleDataIterator
    {
    public:
        DbMultipleDataIterator(const Dbt &dbt);

        bool next(Dbt &data);
    };

If either of the DB_MULTIPLE or DB_MULTIPLE_KEY flags were specified to the Db::get() or Dbc::get() methods, the data Dbt returned by those interfaces will refer to a buffer that is filled with data. Access to that data is through the classes.

The `DbMultipleDataIterator` class is used to iterate through data returned using the DB_MULTIPLE flag from a database belonging to any access method.

The constructor takes the The Dbt Handle returned by the call to Db::get() or Dbc::get() that used the DB_MULTIPLE flag.

### Note

All instances of the bulk retrieval classes may be used only once, and to traverse the bulk retrieval buffer in the forward direction only. However, they are nondestructive, so multiple iterators can be instantiated and used on the same returned data Dbt.

Parameters are:

- `dbt`

  The dbt parameter is a data The Dbt Handle returned by the call to Db::get() or Dbc::get() that used the DB_MULTIPLE flag.

### DbMultipleDataIterator.next()

The `DbMultipleDataIterator.next()` method returns the next data item in the original bulk retrieval buffer.

The `DbMultipleDataIterator.next()` method method returns `false` if no more data are available, and `true` otherwise.

Parameters are:

- `data`

  The data parameter is a The Dbt Handle that will be filled in with a reference to a buffer, a size, and an offset that together yield the next data item in the original bulk retrieval buffer.

### Class

DbMultipleIterator

### See Also

DBT and Bulk Operations

Prev | Up | Next
DbMultipleIterator | Home | DbMultipleKeyDataIterator