SQLite3 の C/C++ インターフェース
中心となるオブジェクトとインターフェース
オブジェクト。
- データベース接続オブジェクト: sqlite3
- Prepared Statement オブジェクト: sqlite3_stmt
関数の説明。
sqlite3_open():
SQLite3 のデータベースファイルへの接続を開き、接続オブジェクトを返す。たいてい sqlite3 API を使うとき最初に呼ばれる。
sqlite3_prepare():
文字列の SQL 文を prepared statement に変換し、ポインタを返す。sqlite3_open() で取得したデータベース接続と SQL 文を与える必要がある。
sqlite3_step():
prepared statement を評価する。最初に実行すると結果セットの最初の行を指している状態になり、もう一度実行すると2行目を指している状態になる。
sqlite3_step() は最後の行に達するまで呼べる。結果セットを返さない INSERT、UPDATE、DELETE などでは、最初の呼び出しですぐに最後の行を呼んだときの値(SQLITE_DONE?)が返る。
sqlite3_column():
sqlite3_step() で評価した prepared statement の結果セットの、現在指している行の中の1カラムを返す。実際には sqlite3_column() という関数があるのではなく、sqlite3_column_*() という関数群がある。また、(string や BLOB 型の)カラムの値のサイズを返す関数やカラムの数を返す関数もある。
sqlite3_finalize():
prepared statement を破棄する。メモリリークを防ぐため、prepared statement はこの関数で必ず破棄しなくてはいけない(must)。
sqlite3_close():
データベース接続を閉じる。閉じる前に関係する prepared statement は sqlite3_finalize() で破棄しておく方が良い(should)。
(続く(予定))