SQLite数据库是如何创建的?
时间: 2024-03-05 13:51:26 浏览: 12
在 Android 中,使用 SQLite 数据库需要经过以下几个步骤进行创建:
1. 创建 SQLiteOpenHelper 子类。SQLiteOpenHelper 是 Android 提供的一个用于管理 SQLite 数据库的帮助类,我们需要继承它并实现必要的方法。
2. 在 onCreate() 方法中创建数据库。在 SQLiteOpenHelper 子类的 onCreate() 方法中可以执行 SQL 语句来创建表和初始化数据等操作。
3. 在 onUpgrade() 方法中更新数据库。当应用需要升级数据库结构时,可以在 SQLiteOpenHelper 子类的 onUpgrade() 方法中执行相应的更新操作。
4. 在应用中使用 SQLiteDatabase 对象进行数据库操作。通过调用 getWritableDatabase() 或 getReadableDatabase() 方法可以获取 SQLiteDatabase 对象,从而进行数据库的增删改查等操作。
以下是一个简单的示例代码:
```java
public class MyDatabaseHelper extends SQLiteOpenHelper {
private static final String DB_NAME = "mydatabase.db";
private static final int DB_VERSION = 1;
public MyDatabaseHelper(Context context) {
super(context, DB_NAME, null, DB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
// 创建表
String sql = "CREATE TABLE IF NOT EXISTS student (_id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)";
db.execSQL(sql);
// 初始化数据
sql = "INSERT INTO student (name, age) VALUES ('Tom', 20), ('Jerry', 22)";
db.execSQL(sql);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// 更新表结构
String sql = "ALTER TABLE student ADD COLUMN sex TEXT";
db.execSQL(sql);
}
}
```
在应用中使用 MyDatabaseHelper 类进行数据库操作:
```java
MyDatabaseHelper dbHelper = new MyDatabaseHelper(context);
SQLiteDatabase db = dbHelper.getWritableDatabase();
Cursor cursor = db.query("student", null, null, null, null, null, null);
if (cursor != null) {
while (cursor.moveToNext()) {
String name = cursor.getString(cursor.getColumnIndex("name"));
int age = cursor.getInt(cursor.getColumnIndex("age"));
// ...
}
cursor.close();
}
db.close();
```