_SQLite_QueryReset
Сброс запросов _SQLite_Query()
#include <SQLite.au3>
_SQLite_QueryReset($hQuery)
Параметры
$hQuery | Дескриптор запроса, созданный _SQLite_Query() |
Возвращаемое значение
Успех: | Возвращает $SQLITE_OK |
Ошибка: | Возвращаемое значение можно сравнить с константами $SQLITE_ * |
@error: | -1 - SQLite сообщил об ошибке (Проверьте возвращаемое значение) |
1 - Ошибка вызова 'sqlite3_reset' SQLite API | |
2 - Вызов предотвращен безопасным режимом |
Примечания
Это сбрасывает незавершённый запрос так, что он может выполниться повторно.См. также
_SQLite_Query, _SQLite_QueryFinalizeПример
#include <SQLite.au3>
#include <SQLite.dll.au3>
Local $hQuery, $aRow, $iSwitch
_SQLite_Startup()
ConsoleWrite("Версия библиотеки SQLite = " & _SQLite_LibVersion() & @CRLF)
_SQLite_Open() ; открывает базу данных в памяти
_SQLite_Exec(-1, "CREATE TABLE tblTest (a,b,c);") ; создаёт таблицу "tblTest"
_SQLite_Exec(-1, _ ; вставляет значения в таблицу
"INSERT INTO tblTest VALUES ('1','1','1');" & _ ; строка 1
"INSERT INTO tblTest VALUES ('2','2','2');" & _ ; строка 2
"INSERT INTO tblTest VALUES ('3','3','3');") ; строка 3
_SQLite_Query(-1, "SELECT RowID,* FROM tblTest;", $hQuery)
While _SQLite_FetchData($hQuery, $aRow) = $SQLITE_OK
$iSwitch = MsgBox(4 + 64, "Строка: " & $aRow[0], $aRow[1] & "," & $aRow[2] & "," & $aRow[3] & @LF & _
"Продолжить цикл?")
If $iSwitch = 6 Then ; если ответ "Да"
If $aRow[0] = 3 Then _SQLite_QueryReset($hQuery) ; если достигнут конец (результат равен последней строке), то сброс запроса
Else ; иначе (ответ "Нет")
_SQLite_QueryFinalize($hQuery) ; завершение запроса
ExitLoop
EndIf
WEnd
_SQLite_Close()
_SQLite_Shutdown()