博客
关于我
Android studio 中使用SQLite数据库
阅读量:797 次
发布时间:2023-03-22

本文共 2670 字,大约阅读时间需要 8 分钟。

使用SQLite数据库是Android应用中处理结构化数据的常用方法,特别适用于需要存储和管理大量数据的场景。以下是Android应用中使用SQLite数据库的核心操作步骤:

步骤1:创建 SQLiteOpenHelper 类

首先,你需要创建一个继承自 SQLiteOpenHelper 的类,这个类将帮助你管理数据库的创建、版本更新以及其他操作。这个类的核心作用是提供数据库操作的接口,包括创建数据库、读写数据以及管理数据库版本。

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 = "example.db";
private static final int DATABASE_VERSION = 1;
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
// 在这里添加创建数据库的逻辑
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// 在这里添加数据库升级逻辑
}
}

步骤2:使用SQLiteDatabase进行 CRUD 操作

在创建完 DatabaseHelper 类后,你需要获取 SQLiteDatabase 实例并执行基本的增删改查操作。

public class MainActivity extends AppCompatActivity {
private static final String TABLE_NAME = "user_info";
private static final String CREATE_TABLE_SQL = "CREATE TABLE " + TABLE_NAME +
" (_id INTEGER PRIMARY KEY, username TEXT, password TEXT)";
private SQLiteDatabase db;
private DatabaseHelper helper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
helper = new DatabaseHelper(this);
db = helper.getWritableDatabase();
}
public void addUser() {
try {
ContentValues contentValues = new ContentValues();
contentValues.put("username", "testuser");
contentValues.put("password", "testpass");
db.insert(TABLE_NAME, null, contentValues);
} catch (SQLException e) {
e.printStackTrace();
}
}
public void queryData() {
Cursor cursor = db.query(TABLE_NAME, null, null, null, null, null, null);
if (cursor.moveToFirst()) {
do {
String username = cursor.getString(1);
String password = cursor.getString(2);
// 处理数据
} while (cursor.moveToNext());
}
cursor.close();
}
@Override
protected void onDestroy() {
super.onDestroy();
if (db != null) {
db.close();
}
}
}

数据库操作注意事项

  • 数据库版本管理:通过 onUpgrade 方法实现数据库版本的升级。当数据库版本发生变化时,需要在此方法中添加升级逻辑。
  • 事务处理:尽量使用事务来提高数据库操作的效率,特别是在进行多个数据插入或更新操作时。
  • 异常处理:在进行数据库操作时,始终要处理可能的异常,避免应用程序崩溃。
  • 查询优化:在进行复杂查询时,可以考虑使用SQLiteQuerypreparedStatement来提高查询性能。
  • 通过以上步骤,你可以在Android应用中成功地使用SQLite数据库来存储和管理结构化数据,并通过增删改查操作完成数据的 CRUD 操作。

    转载地址:http://vnqfk.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现内存映射文件(附完整源码)
    查看>>
    Objective-C实现内存泄露检查(附完整源码)
    查看>>
    Objective-C实现内格尔·施雷肯伯格算法(附完整源码)
    查看>>
    Objective-C实现分块查找算法(附完整源码)
    查看>>
    Objective-C实现分水岭算法(附完整源码)
    查看>>
    Objective-C实现分解质因数(附完整源码)
    查看>>
    Objective-C实现切换数字的符号switchSign算法(附完整源码)
    查看>>
    Objective-C实现列主元高斯消去法(附完整源码)
    查看>>
    Objective-C实现创建多级目录(附完整源码)
    查看>>
    Objective-C实现删除重复的字母字符算法(附完整源码)
    查看>>
    Objective-C实现判断32位的数字是否为正数isPositive算法(附完整源码)
    查看>>
    Objective-C实现十进制转N进制算法(附完整源码)
    查看>>
    Objective-C实现十进制转八进制算法(附完整源码)
    查看>>
    Objective-C实现华氏温度转摄氏温度(附完整源码)
    查看>>
    Objective-C实现单例模式(附完整源码)
    查看>>
    Objective-C实现单向链表的反转(附完整源码)
    查看>>
    Objective-C实现单向链表的反转(附完整源码)
    查看>>
    Objective-C实现单字母密码算法(附完整源码)
    查看>>
    Objective-C实现单循环链表算法(附完整源码)
    查看>>
    Objective-C实现单词计数(附完整源码)
    查看>>