變量以下:java
int id; String code; String name; int qty;
DBHelper類繼承於SQLiteOpenHelper ,建立一個test.db的數據庫,建立一張product表,並對product表進行增刪改查操做。android
import java.util.ArrayList; import java.util.HashMap; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; public class DBHelper extends SQLiteOpenHelper { public final static String DB_NAME = "test.db"; public final static int VERSION = 1; private static DBHelper instance = null; private SQLiteDatabase db; public static DBHelper getInstance(Context context) { if (instance == null) { instance = new DBHelper(context); } return instance; } private void openDatabase() { if (db == null) { db = getWritableDatabase(); } } private DBHelper(Context context) { super(context, DB_NAME, null, VERSION); } /** 第一次安裝程序後建立數據庫 */ @Override public void onCreate(SQLiteDatabase db) { db.execSQL("create table product (_id integer primary key autoincrement,code text,name text,qty Integer )"); } /** 版本升級時,先刪除原有的數據庫,再從新建立數據庫 */ @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("drop table if exist product"); onCreate(db); } /** 添加一條數據 */ public long saveLamp(Product pro) { ContentValues value = new ContentValues(); value.put("code", pro.getCode()); value.put("name", pro.getName()); value.put("qty", pro.getQty()); return db.insert("product", null, value); } /** 根據id刪除數據 */ public int deleteLamp(int id) { return db.delete("product", "_id=?", new String[] { String.valueOf(id) }); } /** 根據id更新數據 */ public int updateLamp(Product pro, int id) { ContentValues value = new ContentValues(); value.put("code", pro.getCode()); value.put("name", pro.getName()); value.put("qty", pro.getQty()); return db.update("product", value, "_id=?", new String[] { String.valueOf(id) }); } /** 查詢全部數據 */ public ArrayList<HashMap<String, Object>> getLampList() { openDatabase(); Cursor cursor = db.query("product", null, null, null, null, null, null); ArrayList<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>(); while (cursor.moveToNext()) { HashMap<String, Object> map = new HashMap<String, Object>(); map.put("id", cursor.getInt(cursor.getColumnIndex("_id"))); map.put("code", cursor.getString(cursor.getColumnIndex("code"))); map.put("name", cursor.getString(cursor.getColumnIndex("name"))); map.put("qty", cursor.getString(cursor.getColumnIndex("qty"))); list.add(map); } return list; } /** 根據編碼查詢數據 */ public Product getALamp(String code) { openDatabase(); Cursor cursor = db.query("product", null, "code=?", new String[] { code }, null, null, null); Product pro = new Product(); while (cursor.moveToNext()) { pro.setId(cursor.getInt(cursor.getColumnIndex("_id"))); pro.setCode(cursor.getString(cursor.getColumnIndex("code"))); pro.setName(cursor.getString(cursor.getColumnIndex("name"))); pro.setQty(cursor.getInt(cursor.getColumnIndex("qty"))); } return pro; } /** 查詢有多少條記錄 */ public int getLampCount() { openDatabase(); Cursor cursor = db.query("product", null, null, null, null, null, null); return cursor.getCount(); } }
import java.util.ArrayList; import java.util.HashMap; import android.app.Activity; import android.os.Bundle; import android.util.Log; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); exec();// 測試數據 } private void exec() { /** 添加數據 */ Product product1 = new Product("pingguo", "紅富士蘋果", 100); long sucess1 = DBHelper.getInstance(MainActivity.this).saveLamp(product1); Log.d("test", "sucess=" + sucess1); if (sucess1 > 0) { // "添加成功!" } else { // "添加失敗,請從新操做!" } /** 修改數據 */ Product product2 = new Product("pingguo", "紅富士蘋果", 100); int updateId = 5; int sucess2 = DBHelper.getInstance(MainActivity.this).updateLamp(product2, updateId); if (sucess2 > 0) { // "修改爲功!" } else { // "修改失敗,請從新操做!" } /** 刪除數據 */ int deleteId = 5; int sucess = DBHelper.getInstance(MainActivity.this).deleteLamp(deleteId); if (sucess > 0) { // "刪除成功!" } else { // "刪除失敗!" } /** 獲取表記錄數 */ int count = DBHelper.getInstance(MainActivity.this).getLampCount(); /** 獲取全部數據 */ ArrayList<HashMap<String, Object>> data = DBHelper.getInstance(MainActivity.this).getLampList(); } }