Android --- SQlite数据存储
在Android中使用SQLite数据库进行数据存储,你需要执行以下步骤:
- 创建一个
SQLiteOpenHelper
子类来管理数据库的创建和版本管理。 - 使用
SQLiteDatabase
对象来执行SQL语句,如插入(INSERT)、更新(UPDATE)、删除(DELETE)和查询(SELECT)。
以下是一个简单的例子:
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DatabaseHelper extends SQLiteOpenHelper {
// 数据库名称
private static final String DATABASE_NAME = "mydatabase.db";
// 数据库版本
private static final int DATABASE_VERSION = 1;
// 创建用户表的SQL语句
private static final String CREATE_TABLE =
"CREATE TABLE IF NOT EXISTS user ("
+ "id INTEGER PRIMARY KEY AUTOINCREMENT, "
+ "name TEXT, "
+ "email TEXT)";
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
// 创建表
db.execSQL(CREATE_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// 更新数据库
}
// 插入数据的方法
public boolean insertData(String name, String email) {
SQLiteDatabase db = this.getWritableDatabase();
try {
// 执行插入
db.execSQL("INSERT INTO user (name, email) VALUES (?, ?)",
new Object[]{name, email});
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
} finally {
db.close();
}
}
// 查询数据的方法
public String[] getAllUsers() {
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery("SELECT name, email FROM user", null);
String[] users = null;
if (cursor.moveToFirst()) {
users = new String[cursor.getCount()];
int i = 0;
do {
users[i] = cursor.getString(cursor.getColumnIndex("name")) + ", " +
cursor.getString(cursor.getColumnIndex("email"));
i++;
} while (cursor.moveToNext());
}
cursor.close();
db.close();
return users;
}
}
使用时,首先创建DatabaseHelper
的实例,然
评论已关闭