データベースのコネクション取得
public class DatabaseOpenHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME = "master.db";
public static final int DATABASE_VERSION = 1;
public DatabaseOpenHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
TODO
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
TODO
}
}
public class MainActivity extends Activity {
private DatabaseOpenHelper openHelper;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
openHelper = new DatabaseOpenHelper(this);
SQLiteDatabase db = openHelper.getWritableDatabase();
}
@Override
public void onDestroy() {
super.onDestroy();
openHelper.close();
}
}
db.execSQL("CREATE TABLE tablename( col1 INT, col2 TEXT )");
db.execSQL(
"INSERT INTO user(_id, name, age) VALUES (?, ?, ?)",
new Object[]{1, "USERNAME", 20}
);
INSERT
ContentValues values = new ContentValues();
values.put("name", "USERNAME");
values.put("age", 20);
long id = db.insert("user", null, values);
UPDATE
ContentValues values = new ContentValues();
values.put("age", 21);
db.update("user", values, "name = 'USERNAME'", null);
ContentValues values = new ContentValues();
values.put("age", 21);
db.update("user", values, "name = ?", new String[]{"USERNAME"});
DELETE
db.delete("user", "name = 'USERNAME'", null);
db.delete("user", "name = ?", new String[]{"USERNAME"});
SELECT(rawQuery)
Cursor c = db.rawQuery("SELECT * FROM user WHERE _id = ?", new String[]{"1"});
SELECT(query)
Cursor c = db.query(
"user",
new String[]{"_id", "name", "age"},
"age > ?",
new String[]{"20"},
null,
null,
null,
);
結果の取得
Cursor cursor = db.rawQuery("select * from users",null);
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex("_id"));
String name = cursor.getInt(cursor.getColumnIndex("name"));
Log.d("CURSOR", "id:" + id + ", name:" + name);
}