SQLiteOpenHelperを
import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; public class mySQLiteOpenHelper extends SQLiteOpenHelper { // DB名とバージョン public static final String DB_NAME = "database"; public static final int DB_VERSION = 1; public static final String TABLE_NAME = "names"; public static final String CREATE_DB_TABLE = " CREATE TABLE " + TABLE_NAME + "(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL);";// CREATE TABLE names (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL); // コンストラクタ public mySQLiteOpenHelper(Context context) { super(context, DB_NAME, null, DB_VERSION); } @Override public void onCreate(SQLiteDatabase sqLiteDatabase) { sqLiteDatabase.execSQL(CREATE_DB_TABLE);// データベースのテーブルを作成する } @Override public void onUpgrade(SQLiteDatabase sqLiteDatabase, int oldVersion, int newVersion) { sqLiteDatabase.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);//テーブル削除 onCreate(sqLiteDatabase);//テーブル作成 } }
こんな感じに書くと
SQLiteDatabase db = new mySQLiteOpenHelper(getApplicationContext()).getReadableDatabase();
こんな感じにデータベースを持ってきて
ContentValues values = new ContentValues();//箱作って for (int i = 0; i < 3; i++) { values.clear();//これで箱のなか綺麗にして values.put("name", "name" + i);//データ押し込んで db.insert(mySQLiteOpenHelper.TABLE_NAME, null, values);//データベースにしまい込む }
こんな感じにデータ入れて
Cursor c = db.query(mySQLiteOpenHelper.TABLE_NAME, new String[]{"name"}, null, null, null, null, null); if (c != null) { if (c.moveToFirst()) {//実はいらないけど一応 do { for (int i = 0; i < c.getColumnCount(); i++) { Log.d(getClass().getSimpleName(), c.getColumnName(i) + " : " + c.getString(i)); } } while (c.moveToNext());//カーソルを次に移動 } else { Log.d(getClass().getSimpleName(), "c.moveToFirst is false"); } c.close();//Cursorは使わなくなったら基本閉じる必要がある } else { Log.d(getClass().getSimpleName(), "c==null"); }
こんな感じに検索して
使い終わったら
db.close();
でデータベースを閉じる