#android建立一個資料庫以及加入資料至資料庫
以下為建立資料表格使用ANDROID 內建的SQLite
以下需額外建立一個Class
此處為建立表格
public class MyDBHelper extends SQLiteOpenHelper {
private SQLiteDatabase db;
public MyDBHelper(Context context, String name,
SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
db = this.getReadableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXISTS"+ " ALARM " +"(_id INTEGER PRIMARY KEY , " +
"Aname VAR UNIQUE , " +
"Atime TIME)");
}
以下為尋找欄位與更新欄位
public Cursor filList(long id) throws SQLException{
Cursor cursor = db.query(
"ALARM",
new String[] {"_id","Atime"},
"_id =" +id,
null,
null,
null,
null,
null
);
if (cursor != null) {
cursor.moveToFirst(); //將指標移到第一筆資料
}
return cursor;
}
public int update(long rowId, String value) {
ContentValues args = new ContentValues();
args.put("Atime", value);
return db.update("ALARM", //資料表名稱
args, //VALUE
"_id=" + rowId, //WHERE
null //WHERE的參數
);
}
判斷資料表是否為空 並重新移至第一個欄位
public boolean isEmpty(){
db.execSQL("CREATE TABLE IF NOT EXISTS"+ " ALARM " +"(_id INTEGER PRIMARY KEY , " + "Aname VAR UNIQUE , " +"Atime TIME)");
Cursor cursor = db.query(
"ALARM",
null,
null,
null,
null,
null,
null,
null
);
if (cursor.getCount() ==0) {
return false; //將指標移到第一筆資料
}
else
return true;
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
以下為加入資料至資資料庫
helper = new MyDBHelper(this,"expense.db",null,1);//在oncreate建立MyDBHelper
if(helper.isEmpty()){ //在oncreate中宣告未建立表格時選高建立n個欄位
Cursor morn = helper.filList(1);
Cursor noo = helper.filList(2);
Cursor ni = helper.filList(3);
Cursor mid = helper.filList(4);
if(!helper.isEmpty()){
values.put("Aname","morning");
values.put("Atime", mmoring);
long id = helper.getWritableDatabase().insert("ALARM", null, values);
values.clear();
Log.d("ADD", id + "");
values.put("Aname","noon");
values.put("Atime", mnoon);
id = helper.getWritableDatabase().insert("ALARM", null, values);
Log.d("ADD", id + "");
values.clear();
values.put("Aname","night");
values.put("Atime", mnight);
id = helper.getWritableDatabase().insert("ALARM", null, values);
Log.d("ADD", id + "");
values.clear();
values.put("Aname","midnight");
values.put("Atime", mmidnight);
id = helper.getWritableDatabase().insert("ALARM", null, values);
Log.d("ADD", id + "");
values.clear();
}
else
{
id = helper.update(1,mmoring);
id = helper.update(2,mnoon);
id = helper.update(3,mnight);
id = helper.update(4,mmidnight);
}
留言
張貼留言