と言うわけで、前回に続き今回は、前回作成したDBファイルをsqlite3コマンドで見てみます。

以下の様に構造体はBLOBで格納したのですが、最初のメンバーはsqlite3コマンドで見られます。
Oracleではちょっと考えられませんが、この辺がsqliteらしいとこでしょうか。

$ sqlite3 test.db
SQLite version 3.6.22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> select * from member;
0|Isono Katsuo
1|Isono Wakame
2|Huguta Tarao
3|Huguta Masuo
4|Huguta Sazae
sqlite>

 

SQLiteのC言語APIを使ってprepared statementで、BLOBを使ってみます。

基本的には、以下のサイトに書いてある方法ですが、日本語で書いてみることにします。
http://www.sqlite.org/capi3ref.html#sqlite3_stmt

  1. sqlite3_prepare_v2()(あるいはそれに類するもの)を使って、sqlite3_stmtのオブジェクトを作る。
  2. sqlite3_bind_*() インターフェースを使ってパラメータに値をBind。
  3. sqlite3_step()を使ってSQL実行。(sqlite3_step()は何回でも実行できる)
  4. sqlite3_reset()を使ってstatementをリセットして、step 2に戻る。これは何度でもできるし、やらなくても良い。
  5. sqlite3_finalize()を使ってオブジェクトを破棄する。

Continue reading »