函数参考


_SQLite_Exec

执行 SQLite 查询,不处理结果.

#include <SQLite.au3>
_SQLite_Exec ( $hDB, $sSQL [, $sCallBack ] )

参数

$hDB 打开的数据库,如为 -1, 则使用最后打开的数据库
$sSQL 要执行的语句
$sCallback [可选参数] 如果指定此参数,则每一行都将调用函数

返回值

成功: 返回 $SQLITE_OK
失败: 返回值可能违反 $SQLITE_* 常量@错误:
-1 - SQLite 报告错误 (检查返回值)
1 - 错误调用 SQLite API 'sqlite3_exec'
2 - 调用被安全模式阻止
3 - _SQLite_GetTable2d 内部回叫错误
4 - 转换 SQL 语句到 UTF-8 错误

注意/说明

 回调函数必须接受 1 个参数,
 并能返回 $SQLITE_ABORT 停止处理(见示例).
 在回调序列的第一行为列名称.

相关

示例/演示


#include <SQLite.au3>
#include <SQLite.dll.au3>

Local $hQuery, $aRow
_SQLite_Startup()
ConsoleWrite("_SQLite_LibVersion=" & _SQLite_LibVersion() & @CRLF)
_SQLite_Open()
; 没有 $sCallback 这是没意义的语句
_SQLite_Exec(-1, "Create table tblTest (a,b int,c single not null);" & _
        "Insert into tblTest values ('1',2,3);" & _
        "Insert into tblTest values (Null,5,6);")

Local $d = _SQLite_Exec(-1, "Select rowid,* From tblTest", "_cb") ; 将对每行调用 _cb

Func _cb($aRow)
    For $s In $aRow
        ConsoleWrite($s & @TAB)
    Next
    ConsoleWrite(@CRLF)
    ; 返回 $SQLITE_ABORT ; 会中断进程并在 _SQLite_Exec() 中触发 @error
EndFunc   ;==>_cb
_SQLite_Close()
_SQLite_Shutdown()

; 输出
;~  1       1   2   3
;~  2           5   6