本地数据库是指在本地设备上存储数据的数据库,与服务器端数据库不同。对于安卓APP开发来说,使用本地数据库是一种常见的数据存储方式,它可以方便地存储一些本地需要使用的数据。
本地数据库常用的有SQLite、Realm、Room等。其中SQLite是 Android 的官方支持的本地数据库,也是使用最广泛的本地数据库。
SQLite 是一种轻型数据库,与传统的数据库系统相比,它具有以下几个优势:
1. 体积小,非常适合移动设备使用;
2. 它是一个文件,方便备份和存储;
3. 它支持事务,保证数据的一致性。
以下是SQLite的一些基本用法:
1. 数据库和数据表的创建:
```
// 创建一个数据库对象
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(databasePath,null);
// 创建数据表
String sql = "create table if not exists table_name(_id integer primary key autoincrement, name varchar(30), age integer)";
db.execSQL(sql);
```
2. 插入数据:
```
ContentValues values = new ContentValues();
values.put("name", "张三");
values.put("age", 20);
db.insert("table_name", null, values);
```
3. 查询数据:
```
String[] columns = {"_id", "name", "age"};
String selection = "name=?";
String[] selectionArgs = {"张三"};
Cursor cursor = db.query("table_name",columns, selection, selectionArgs, null, null, null);
while(cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex("_id"));
String name = cursor.getString(cursor.getColumnIndex("name"));
int age = cursor.getInt(cursor.getColumnIndex("age"));
}
```
4. 更新数据:
```
ContentValues values = new ContentValues();
values.put("age", 30);
String whereClause = "name=?";
String[] whereArgs = {"张三"};
db.update("table_name", values, whereClause, whereArgs);
```
5. 删除数据:
```
String whereClause = "name=?";
String[] whereArgs = {"张三"};
db.delete("table_name", whereClause, whereArgs);
```
总之,SQLite 是 Android 平台下非常常见的一种本地数据库,了解其基本用法对于安卓APP开发非常重要。