| SQLITE3_RESET(3) | Library Functions Manual | SQLITE3_RESET(3) |
sqlite3_reset —
reset a prepared statement object
#include
<sqlite3.h>
int
sqlite3_reset(sqlite3_stmt
*pStmt);
The sqlite3_reset() function is called to reset a prepared
statement object back to its initial state, ready to be re-executed. Any SQL
statement variables that had values bound to them using the sqlite3_bind_*()
API retain their values. Use
sqlite3_clear_bindings()
to reset the bindings.
The sqlite3_reset(S) interface resets the prepared statement S back to the beginning of its program.
The return code from sqlite3_reset(S) indicates whether or not the previous evaluation of prepared statement S completed successfully. If sqlite3_step(S) has never before been called on S or if sqlite3_step(S) has not been called since the previous call to sqlite3_reset(S), then sqlite3_reset(S) will return SQLITE_OK.
If the most recent call to sqlite3_step(S) for the prepared statement S indicated an error, then sqlite3_reset(S) returns an appropriate error code. The sqlite3_reset(S) interface might also return an error code if there were no prior errors but the process of resetting the prepared statement caused a new error. For example, if an INSERT statement with a RETURNING clause is only stepped one time, that one call to sqlite3_step(S) might return SQLITE_ROW but the overall statement might still fail and the sqlite3_reset(S) call might return SQLITE_BUSY if locking constraints prevent the database change from committing. Therefore, it is important that applications check the return code from sqlite3_reset(S) even if no prior call to sqlite3_step(S) indicated a problem.
The sqlite3_reset(S) interface does not change the values of any bindings on the prepared statement S.
These declarations were extracted from the interface documentation at line 5293.
SQLITE_API int sqlite3_reset(sqlite3_stmt *pStmt);
sqlite3_bind_blob(3), sqlite3_clear_bindings(3), sqlite3_stmt(3), SQLITE_OK(3)
| January 24, 2024 | NetBSD 11.0 |