![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Функцию sqlite3_reset() вызывают, чтобы перезагрузить
подготовленный объект назад к его начальному
состоянию, готовому быть повторно выполненным. Любые переменные
SQL-оператора, у которых были значения, связанные с ними, используя
sqlite3_bind_*() API,
сохраняют свои значения. Используйте
sqlite3_clear_bindings(),
чтобы перезагрузить привязки. sqlite3_reset(S)
перезагружает подготовленный запрос S
назад к началу его программы. Код возврата от sqlite3_reset(S)
указывает действительно ли предыдущая оценка подготовленного запроса
S закончена успешно. Если к sqlite3_step(S)
прежде никогда не обращались на S или если
sqlite3_step(S)
не вызвали, начиная с предыдущего обращения к
to sqlite3_reset(S), то
sqlite3_reset(S) вернет
SQLITE_OK. Если новый запрос к sqlite3_step(S) для
подготовленного запроса S указал на ошибку, то
sqlite3_reset(S)
возвращает соответствующий код ошибки.
sqlite3_reset(S)
мог бы также возвратить код ошибки, если бы не
было никаких предшествующих ошибок, но процесс сброса подготовленного
запроса вызвал новую ошибку. Например, если
INSERT с
RETURNING
выполнен только один раз, запрос sqlite3_step(S)
мог бы возвратить SQLITE_ROW, но полный запрос
мог бы все еще потерпеть неудачу, и
sqlite3_reset(S)
мог бы возвратить SQLITE_BUSY, если ограничения блокировки препятствуют тому,
чтобы изменение базы данных передалось. Поэтому важно, чтобы запросы
проверили код возврата от sqlite3_reset(S),
даже если никакой предшествующий запрос к
sqlite3_step(S) не указал на проблему. sqlite3_reset(S)
не изменяет значения никаких привязок в
подготовленном запросе S.
Choose any three.
SQLite C Interface
Перезагрузите подготовленный объект запроса
int sqlite3_reset(sqlite3_stmt *pStmt);