Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android數據庫編程SQLite詳解

Android數據庫編程SQLite詳解

編輯:Android開發實例

程序開發離不開數據庫,數據庫作為一種不可或缺的存儲技術,同樣的,在Android中也為我們提供了數據庫支持,使用的是SQLite數據庫系統。

 

SQLite是一種輕型數據庫系統,並以嵌入式為設計目標,占用資源低,因此作為手機操作系統優秀的數據庫系統選擇平台。

SQLite的使用涉及兩個重要的類,一個是SQLiteOpenHelper和SQLiteDatabase,SQLiteOpenHelper是SQLite的數據庫輔助類,而SQLiteDatabase作為SQLite的數據庫實體類,用於管理數據庫增刪改查等操作,下面我們詳細解析SQLite的具體使用方法。

public class DatabaseHelper extends SQLiteOpenHelper {
DatabaseHelper(Context context, String name, CursorFactory cursorFactory, int version) {
        super(context, name, cursorFactory, version);
    }
@Override
public void onCreate(SQLiteDatabase db) {
        // 創建數據庫後,對數據庫的操作
    }
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // 更改數據庫版本的操作
    }
@Override
public void onOpen(SQLiteDatabase db) {
        super.onOpen(db);
        // 打開數據庫後首先被執行
    }
}

讓DatabaseHelper繼承SQLiteOpenHelper,分別覆蓋onCreate、onUpgrade和onOpen方法,這樣在數據庫的具體操作的時候,我們可以輕易獲取數據庫實例對象,具體應用我們繼續分析以下代碼,我們先來創建數據庫。

private static final String DATABASE_NAME = "fengflycom.db"; //定義數據庫名稱
private static final int DATABASE_VERSION = 1;//定義數據庫版本
private static final String TABLE_NAME = "fengfly";//定義數據表名稱

DatabaseHelper dbHelper = new DatabaseHelper(this, DATABASE_NAME, null,
                DATABASE_VERSION);//通過DatabaseHelper定義數據庫

創建數據表:

void CreateTable() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
String sql = "CREATE TABLE IF NOT EXISTS " + TABLE_NAME
    + " (ID INTEGER PRIMARY KEY, Name VARCHAR, Password VARCHAR);";
    try {
        db.execSQL(sql);
        } catch (SQLException ex) {//異常處理
    }
}

插入數據信息:

private void insert() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
try {
    String sql = "insert into " + TABLE_NAME
            + " (name, age) values (‘FENGFLY’,'FENGFLY.COM’)";
    db.execSQL(sql);//執行指定的 sql
    } catch (SQLException ex) {
        txtMsg.setText("插入數據失敗\n" + ex.toString() + "\n");
    }
}

刪除數據:

private void delete() {
try {
    SQLiteDatabase db = dbHelper.getWritableDatabase();
    db.delete(TABLE_NAME, " id=1", null);
     } catch (SQLException e) {//異常處理
    }
}

更新數據信息:

private void update() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
try {
    ContentValues values = new ContentValues();
    values.put("name", "fengfly.com");
    db.update(TABLE_NAME, values, "id<=?", new String[] { "3" });
     } catch (SQLException e) {//異常處理
   }
}

刪除數據表:

private void dropTable() {
    SQLiteDatabase db = dbHelper.getWritableDatabase();
    String sql = "DROP TABLE IF EXISTS " + TABLE_NAME;
    try {
        db.execSQL(sql);
    } catch (SQLException ex) {//異常處理
    }
}

有以上實例可以完成Android平台下數據庫SQLite的基本數據庫操作方法,我們可以看出與其他數據庫操作的方法基本一樣,通過SQL命令語句即可完成SQLite的各種操作,實現起來非常方便。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved