📅  最后修改于: 2023-12-03 14:39:08.369000             🧑  作者: Mango
SQLite是一款轻量级的关系型数据库,广泛应用于Android开发中。在本教程中,我们将介绍如何在Android应用中使用SQLite数据库。
SQLite是一款文件型的关系型数据库,它不需要单独的服务器来运行,而是直接以文件的方式存在于本地,因此可以节省大量的时间和开销。SQLite支持所有SQL-92标准定义的SQL语句和几乎所有SQL-99扩展。
在Android中使用SQLite,需要使用Android提供的SQLiteOpenHelper
类。SQLiteOpenHelper
类提供了创建、升级和操作SQLite数据库的方法。
public class MyDatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "my_database.db";
private static final int DATABASE_VERSION = 1;
private static final String TABLE_NAME = "my_table";
private static final String COL_NAME = "name";
private static final String COL_AGE = "age";
public MyDatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String sql = "CREATE TABLE " + TABLE_NAME + " ("
+ "_id INTEGER PRIMARY KEY AUTOINCREMENT, "
+ COL_NAME + " TEXT, "
+ COL_AGE + " INT)";
db.execSQL(sql);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
String sql = "DROP TABLE IF EXISTS " + TABLE_NAME;
db.execSQL(sql);
onCreate(db);
}
}
在这个类中,我们定义了数据库名称、版本、表名称和表中的字段。在onCreate
方法中,我们定义了如何创建表,在onUpgrade
方法中,我们定义了如何升级表。
MyDatabaseHelper dbHelper = new MyDatabaseHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
我们可以使用MyDatabaseHelper
类的实例来创建SQLite数据库,并使用getWritableDatabase()
方法获取写入权限。
ContentValues values = new ContentValues();
values.put(COL_NAME, "Tom");
values.put(COL_AGE, 25);
db.insert(TABLE_NAME, null, values);
values = new ContentValues();
values.put(COL_NAME, "Jerry");
values.put(COL_AGE, 30);
db.insert(TABLE_NAME, null, values);
Cursor cursor = db.query(TABLE_NAME, new String[]{"_id", COL_NAME, COL_AGE}, null, null, null, null, null);
while (cursor.moveToNext()) {
int id = cursor.getInt(0);
String name = cursor.getString(1);
int age = cursor.getInt(2);
Log.d(TAG, "id:" + id + " name:" + name + " age:" + age);
}
cursor.close();
我们可以使用ContentValues
对象来保存数据,并且使用insert
方法来插入数据。我们还可以使用query
方法来查询数据。
本教程介绍了如何在Android应用中使用SQLite数据库。从创建SQLiteOpenHelper
类、创建SQLite数据库到操作SQLite数据库的完整流程。在实际开发中,SQLite是一个非常有用的工具,能够大大简化数据操作的流程。