Notepad Tutorial (1)
現実トウヒ、と言ってましたが、今日はなんやかやでトウヒの暇もなかった。とりあえず帰宅後に NotepadCodeLab.zip を download してきて解凍。eclipse でプロジェクトを作成。
中身を見てみたらソースファイルは
の二つ。Step 2 にて NotesDBAdapter クラスについて色々な記述がありますが、基本的に android な SQLite 云々な模様。import されてるのが以下。
import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.SQLException; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log;
うーん。どうもローカルな SQLite 使ってる模様。これ、木南さん本 だと 8 章らへんな模様。しかも同じ章にコンテントプロバイダ云々な情報もあり。
で、tutorial にも記述があるんですが、クラス定義の先頭部分にて属性 (一部定数) が定義されている。
public static final String KEY_TITLE = "title"; public static final String KEY_BODY = "body"; public static final String KEY_ROWID = "_id"; private static final String TAG = "NotesDbAdapter"; private DatabaseHelper mDbHelper; private SQLiteDatabase mDb; /** * Database creation sql statement */ private static final String DATABASE_CREATE = "create table notes (_id integer primary key autoincrement, " + "title text not null, body text not null);"; private static final String DATABASE_NAME = "data"; private static final String DATABASE_TABLE = "notes"; private static final int DATABASE_VERSION = 2; private final Context mCtx;
TAG って何だよ、とか Context って何だよ、とか色々あるんですが以下な模様。
- 先頭三つは列名な模様
- DATABASE_CREATE 属性にてテーブル定義な SQL が書いてある
- DB 一つでテーブル一つ? とかツッコミ所満載な気もしますが、細かい部分はスルー
- Context 型について確認必要
- TAG は SQLiteOpenHelper を継承するクラス内でログ出力時に使われている模様
明日は時間が確保できるはずなので、今日はこれで終了。