Function Reference

_SQLite_Exec

SQLiteクエリを実行します。結果は制御しません。

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

 

パラメータ

$hDB 開かれているデータベース。最後に開かれたデータベースを使用する場合-1を使用
$sSQL 実行するSQLステートメント
$sCallback [オプション]指定した関数が各行で呼ばれます

 

返し値

成功: $SQLITE_OKを返します
失敗: $SQLITE_* 定数と比較可能な値を返します
@error: -1 - SQLiteがエラーを報告 (返し値を調べてください)
1 - SQLite API 'sqlite3_exec'の呼び出しエラー
2 - SafeModeによって呼び出しが阻止されました
3 - _SQLite_GetTable2d内からのコールバック処理エラー
4 - SQLステートメントのUTF-8変換中のエラー

 

注意

コールバック関数は1パラメータを受け、中止処理のためにSQLITE_ABORTを返すことができなければなりません(例を参照)。
コールバックシーケンスの一行目は列名になります。

 

関連

_SQLite_Query, _SQLite_GetTable, _SQLite_GetTable2d

 


#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);")

$d = _SQLite_Exec(-1,"Select oid,* From tblTest","_cb") ; _cbは各行で呼ばれる
Func _cb($aRow)
    For $s In $aRow
        ConsoleWrite($s & @TAB)
    Next
    ConsoleWrite(@CRLF)
    ; $SQLITE_ABORTを返す ; 処理を破棄し_SQLite_Exec()の@errorをトリガする
EndFunc
_SQLite_Close()
_SQLite_Shutdown()

; 出力:
;~  rowid   a   b   c
;~  1       1   2   3
;~  2           5   6