Notes for Using C Driver
NuoDB_ResultSet type is returned by various functions in the C driver API. There is no need for a client application to create
NuoDB_ResultSet types. However, a client application should call
NuoDB_ResultSetFree() when a
NuoDB_ResultSet is no longer needed.
NuoDB_ResultSet behaves differently depending on whether the
AUTOCOMMIT property is on or off. If autocommit is on, you are limited to one active, valid
NuoDB_ResultSetMetaData types and
NuoDB_ResultSet types returned from
NuoDB_Statement can be open at the same time but they have the same lifecycle. That is, they are valid until closed, committed, or another statement is executed by the
NuoDB_Statement type. A statement that returns a
NuoDB_ResultSet defers committing the transaction. This ensures that iteration over the
NuoDB_ResultSet is consistent with the data and the transaction isolation level. Each execution of a statement commits any previously deferred transaction, which closes any associated
If autocommit is off, you can have as many
NuoDB_ResultSet types as you need. Each
NuoDB_ResultSet must come from a unique
NuoDB_Statement type. You cannot have multiple open
NuoDB_ResultSet types from the same statement. When a statement is executed, any currently associated
NuoDB_ResultSet is closed and it cannot be reopened or reused.
As mentioned before, NuoDB does not support more than one
For a client application to use the same type instance in more than one thread, the client must perform its own synchronization, reference counting, and concurrency control. The C driver provides the necessary thread safety only for its internal state and resources.