Android SQLite

preview
共50个文件
class:22个
png:8个
xml:6个
需积分: 0 1 下载量 71 浏览量 更新于2014-07-29 1 收藏 408KB RAR 举报
Android SQLite是一个轻量级的数据库管理系统,用于在Android应用程序中存储和管理数据。SQLite被集成到Android系统中,为开发者提供了高效、可靠的本地数据存储解决方案。在这个简单的使用例子中,我们将探讨如何在Android应用中创建、操作和查询SQLite数据库。 要在Android应用中使用SQLite,你需要创建一个SQLiteOpenHelper的子类。这个类负责数据库的创建、升级以及版本管理。例如,你可以创建一个名为`DatabaseHelper`的类,重写`onCreate()`和`onUpgrade()`方法。`onCreate()`方法在首次创建数据库时调用,`onUpgrade()`则在数据库升级时执行。 ```java public class DatabaseHelper extends SQLiteOpenHelper { // 数据库版本号 private static final int DATABASE_VERSION = 1; // 数据库名 private static final String DATABASE_NAME = "MyDatabase.db"; public DatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { // 创建表的SQL语句 String CREATE_TABLE = "CREATE TABLE " + "TableName" + "(" + "id INTEGER PRIMARY KEY AUTOINCREMENT," + "name TEXT," + "age INTEGER" + ")"; db.execSQL(CREATE_TABLE); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // 升级表结构或删除旧表的SQL语句 db.execSQL("DROP TABLE IF EXISTS TableName"); onCreate(db); } } ``` 接下来,你可以通过`getWritableDatabase()`或`getReadableDatabase()`方法获取SQLite数据库实例,然后进行增删改查操作。例如,插入数据: ```java DatabaseHelper dbHelper = new DatabaseHelper(context); SQLiteDatabase db = dbHelper.getWritableDatabase(); ContentValues contentValues = new ContentValues(); contentValues.put("name", "John Doe"); contentValues.put("age", 25); long id = db.insert("TableName", null, contentValues); ``` 查询数据则可以使用`rawQuery()`方法: ```java Cursor cursor = db.rawQuery("SELECT * FROM TableName WHERE name=?", new String[]{"John Doe"}); if (cursor.moveToFirst()) { do { String name = cursor.getString(cursor.getColumnIndex("name")); int age = cursor.getInt(cursor.getColumnIndex("age")); // 处理查询结果 } while (cursor.moveToNext()); } cursor.close(); ``` 为了方便操作,你还可以创建一个DAO(数据访问对象)类,封装所有的数据库操作,使其更易管理和测试。 在Android应用中,SQLite数据库的使用是线程安全的。因为SQLiteOpenHelper的实例是单例模式,而对数据库的操作都是在同一个线程中进行。但在多线程环境中,仍需注意同步控制,以免引发并发问题。 此外,Android Studio提供了SQLite数据库查看工具——Android Device Monitor(在新版本中已被Android Studio Profiler取代),可以帮助开发者在调试过程中实时查看和修改数据库内容,这对调试和测试非常有帮助。 Android中的SQLite提供了一个强大的本地数据存储解决方案,通过SQLiteOpenHelper和SQL语句,开发者可以轻松地管理应用程序的数据。合理地设计数据库模型,使用合适的查询方式,将有助于提升应用程序的性能和用户体验。在实际项目中,还需要考虑数据备份、恢复、迁移等复杂场景,进一步优化SQLite的使用。
YHFHing
  • 粉丝: 516
  • 资源: 9
上传资源 快速赚钱
voice
center-task 前往需求广场,查看用户热搜