Android数据库编程SQLite详解

 

程序开发离不开数据库,数据库作为一种不可或缺的存储技术,同样的,在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 = "ataawcom.db"; //定义数据库名称 
private static final int DATABASE_VERSION = 1;//定义数据库版本 
private static final String TABLE_NAME = "ataaw";//定义数据表名称

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 (‘ATAAW’,'ATAAW.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", "ataaw.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的各种操作,实现起来非常方便。

 

 

你可能感兴趣的:(sql,编程,android,sqlite,嵌入式)