首先要繼承抽象類:SQLiteOpenHelper
可以這樣寫:
package sRoger.pack; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; /** * sqlite 輔助類 * @author sRoger * */ public class SqliteHelper extends SQLiteOpenHelper { /** * 版本號 */ private static final int VERSION = 1; private final String tag="SqliteHelper"; /** * 構造函數 * @param context * @param name * @param factory * @param version */ public SqliteHelper(Context context, String name, CursorFactory factory, int version) { // 調用父類構造函數 super(context, name, factory, version); } public SqliteHelper(Context context,String name,int version){ this(context,name,null,version); } public SqliteHelper(Context context,String name){ this(context,name,VERSION); } @Override public void onCreate(SQLiteDatabase db) { Log.d(tag, "創建了一個Sqlite數據庫"); db.execSQL("create table user" + "(" + " id int," + " name varchar(20)" + ")" ); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { Log.d(tag, "Upgrade execute."); } }
然后添加幾個按鈕,分別為:增、刪、改、查
代碼如下:
package sRoger.pack; import android.app.Activity; import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class LayoutSample14 extends Activity { private String tag="Sqlite3"; private Button btnCreate = null; private Button btnUgrageDatabase = null; private Button btnInsert = null; private Button btnUpdateSql = null; private Button btnQuerySql = null; private Button btnDeleteSql=null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // 創建SQLite3數據庫 btnCreate = (Button) findViewById(R.id.Create); btnCreate.setOnClickListener(new OnClickListener() { public void onClick(View v) { //這個構造函數中的兩個參數,第一個代表當前實例上下文,第二是Sqlite3 數據庫名稱 SqliteHelper helper=new SqliteHelper(getApplicationContext(), "sRoger_Db"); SQLiteDatabase dbase = helper.getReadableDatabase(); Toast.makeText(getApplicationContext(), "createDatabase", Toast.LENGTH_SHORT).show(); Log.d(tag, "Create Database"); } }); // 更新版本 btnUgrageDatabase = (Button)findViewById(R.id.Upgrade); btnUgrageDatabase.setOnClickListener(new OnClickListener() { public void onClick(View v) { SqliteHelper helper=new SqliteHelper(getApplicationContext(), "sRoger_Db", 2); SQLiteDatabase dbase=helper.getReadableDatabase(); Log.d(tag,"Upgrade Database"); } }); // 插入記錄 btnInsert = (Button)findViewById(R.id.Insert); btnInsert.setOnClickListener(new OnClickListener() { public void onClick(View v) { ContentValues cv=new ContentValues(); cv.put("Id", 1); cv.put("name", "sRoger"); SqliteHelper helper=new SqliteHelper(getApplicationContext(), "sRoger_Db", 3); SQLiteDatabase dbase=helper.getWritableDatabase(); //調用Insert方法,向SQLite3中插入記錄 dbase.insert("user", null, cv); Log.d(tag,"insert data to Database"); } }); // 更新記錄 btnUpdateSql=(Button)findViewById(R.id.updateSql); btnUpdateSql.setOnClickListener(new OnClickListener() { public void onClick(View v) { SqliteHelper helper=new SqliteHelper(getApplicationContext(), "sRoger_Db",4); SQLiteDatabase db=helper.getWritableDatabase(); ContentValues cv=new ContentValues(); cv.put("name", "baihongying"); /* * 第一個參數是:表名 * 第二個參數ContentValues對象 * 第三個參數where子句,里面的問題是一個占位符 * 第四個參數是占位符對應的值 * 注意:有幾個占位符第四個參數里面就應該有幾個值 */ db.update("user", cv, "id=?", new String[]{"1"}); Log.d(tag, "update data to Database"); } }); //查詢記錄 btnQuerySql = (Button)findViewById(R.id.querySql); btnQuerySql.setOnClickListener(new OnClickListener() { public void onClick(View v) { SqliteHelper helper=new SqliteHelper(getApplicationContext(), "sRoger_Db", 5); SQLiteDatabase db=helper.getReadableDatabase(); Cursor cur = db.query("user", new String[]{"id","name"}, "id=?", new String[]{"1"}, "id", null, null); while(cur.moveToNext()){ String name=cur.getString(cur.getColumnIndex("name")); Log.d(tag, name); } } }); //刪除操作 btnDeleteSql = (Button)findViewById(R.id.deleteSql); btnDeleteSql.setOnClickListener(new OnClickListener() { public void onClick(View v) { SqliteHelper helper = new SqliteHelper(getApplicationContext(), "sRoger_Db", 6); SQLiteDatabase db=helper.getWritableDatabase(); db.delete("user", "id=?", new String[]{"1"}); } }); } }
