首先继承SQLiteOpenHelper类,重写onCreate用来创建表结构,onUpgrade用作后续更新表结构。
public SQLiteImpl( Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
//创建表
db.execSQL("create table utext_table(uid INTEGER primary Key autoincrement,username varchar(20),userpassword varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//用来更新表,按版本号
}
private SQLiteDatabase db;//此类内含调用sql方法
//SQLiteImpl实例
final SQLiteImpl sqLite=new SQLiteImpl(this,"预备数据库库名",null,1);
调用时:
增
db=sqLite.getWritableDatabase();//打开或创建数据库
ContentValues values=new ContentValues();//用作插入
values.put("字段名","值");
db.insert("表名",null,values);
db.close();//关库
删
db=sqLite.getWritableDatabase();//打开或创建数据库
db.delete("表名","字段=?",new String[]{"?对应的值"});
db.close();//关库
改
db=sqLite.getWritableDatabase();//打开或创建数据库
ContentValues values=new ContentValues();//用作更改后参数
values.put("字段名","值");
db.update("表名",values,"字段=?",new String[]{"?对应的值"});
db.close();//关库
查
db=sqLite.getWritableDatabase();//打开或创建数据库
Cursor cursor=db.rawQuery("查询sql",null);
while (cursor.moveToNext()) {//对结果遍历
@SuppressLint("Range") String newName = cursor.getString(cursor.getColumnIndex("name"));//
@SuppressLint("Range") int newAge = cursor.getInt(cursor.getColumnIndex("age"));
}
cursor.close();
db.close();
|