一、在src上按滑鼠右鍵,選擇 New / Class,來新增一個名為"DBHelper"的類別。
二、DBHelper.java 的程式碼如下:
這裡一定要有 onCreate 和 onUpgrade ,onCreate會建立資料表。
onUpgrade 是指當我們修改資料表時,若資料表已經存在,則會先執行刪除table,再建立table。==>這個方式不大對,因為每次刪除table,重鍵一個資料表,歷史資料也跟著清空了。
package com.example.test;
import static android.provider.BaseColumns._ID; //這個是資料庫都會有個唯一的ID
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DBHelper extends SQLiteOpenHelper {
//喧告公用常數(final)
public static final String TABLE_NAME = "friends"; //表格名稱
public static final String NAME = "name";
public static final String TEL = "tel";
public static final String EMAIL = "email";
private final static String DATABASE_NAME = "demo.db"; //資料庫名稱
private final static int DATABASE_VERSION = 1; //資料庫版本
public DBHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
//建立table,有NAME、TEL、EMAIL 三個欄位
public void onCreate(SQLiteDatabase db) {
final String INIT_TABLE = "CREATE TABLE " + TABLE_NAME + " (" +_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + NAME + " CHAR, " + TEL + " CHAR, " + EMAIL + " CHAR);";
db.execSQL(INIT_TABLE);
}
@Override
//刪除table
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
final String DROP_TABLE = "DROP TABLE IF EXISTS " + TABLE_NAME;
db.execSQL(DROP_TABLE);
onCreate(db);
}
}
三、在主程式裡,
package com.example.test;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
publicclass MainActivity extends Activity {
private DBHelper dbhelper = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dbhelper = new DBHelper(this); //執行Helper類,會建立demo資料庫,和有三個欄位NAME、TEL、EMAIL 的 friends 資料表 .
dbhelper.close();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
四、如何看資料庫是否建立成功?可參考"SQLite簡介",若有看到 demo.db ,就成功了。
接著要新增和查詢資料,可以看這篇:[android SQLite] SQLite 新增和查詢資料
留言列表