sqlite的使用

  • 创建类继承SQLiteOpenHelper类
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    public class DatabaseHelper extends SQLiteOpenHelper{

    public static final String DATABASE_NAME = "database";

    public static final int DATABASE_VERSION = 1;

    //构造方法可根据需求修改形参
    public DatabaseHelper(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    public DatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
    super(context, DATABASE_NAME, factory, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
    db.execSQL("create table if not exists user (id integer primary key, name varchar(20), age integer)");
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    }
    }
  • 创建数据库功能类(CURD,增删改查)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    public class DatabaseManager {

    private DatabaseHelper dbHelper;

    private SQLiteDatabase db;

    public DatabaseManager(Context context){
    this.dbHelper = new DatabaseHelper(context);
    }

    public void openDB() {
    //getWritableDatabase()返回读写数据库的对象
    db = dbHelper.getWritableDatabase();
    }

    public void closeDB() {
    db.close();
    }

    public List<UserBean> queryAll() {
    List<UserBean> userList = new ArrayList<>();
    Cursor cursor = db.rawQuery("select * from user", null);
    while (cursor.moveToNext()){
    UserBean user = new UserBean(cursor.getInt(0), cursor.getString(1), cursor.getInt(2));
    userList.add(user);
    }
    cursor.close();
    return userList;
    }
    }