返回
零基础SQLite数据库攻略:Android SQLite增删改查全面解析!
Android
2022-12-01 16:55:27
SQLite数据库入门:Android开发指南
简介
SQLite是一款轻量级、无服务器的数据库,以其易用性和跨平台性而闻名。在Android开发中,它被广泛应用于存储和管理数据。本指南将逐步指导您使用SQLite数据库,包括创建和连接数据库,以及执行增删改查操作。
创建和连接数据库
要使用SQLite数据库,您需要导入必要的库并创建一个DBHelper
类,继承自SQLiteOpenHelper
。该类将处理数据库的创建和连接:
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DBHelper extends SQLiteOpenHelper {
public DBHelper(Context context) {
super(context, "mydatabase.db", null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXISTS user(id INTEGER PRIMARY KEY, name TEXT, age INTEGER)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// 数据库升级操作
}
}
增删改查操作
插入数据
使用insert()
方法向数据库中插入数据:
ContentValues values = new ContentValues();
values.put("name", "John Doe");
values.put("age", 25);
long rowId = db.insert("user", null, values);
查询数据
使用query()
方法查询数据:
String[] projection = {"id", "name", "age"};
String selection = "age > ?";
String[] selectionArgs = {"18"};
Cursor cursor = db.query("user", projection, 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"));
// ...
}
cursor.close();
更新数据
使用update()
方法更新数据:
ContentValues values = new ContentValues();
values.put("age", 26);
String selection = "name = ?";
String[] selectionArgs = {"John Doe"};
int count = db.update("user", values, selection, selectionArgs);
删除数据
使用delete()
方法删除数据:
String selection = "age < ?";
String[] selectionArgs = {"18"};
int count = db.delete("user", selection, selectionArgs);
结论
掌握SQLite数据库是Android开发的基础。通过本指南,您已了解如何创建和连接数据库,以及执行常见的增删改查操作。利用这些知识,您可以轻松存储和管理您的Android应用程序中的数据。
常见问题解答
1. 如何创建表?
在onCreate()
方法中使用execSQL()
方法创建表。
2. 如何获取数据库连接?
使用getWritableDatabase()
或getReadableDatabase()
方法获取数据库连接。
3. 如何关闭数据库连接?
使用close()
方法关闭数据库连接。
4. 如何处理数据库升级?
在onUpgrade()
方法中编写数据库升级逻辑。
5. 如何检查表是否存在?
使用execSQL("SELECT COUNT(*) FROM user")
查询表是否存在。