如何在Android studio数据库中创建多个表
时间: 2024-05-03 08:18:56 浏览: 149
Android Studio3.6.3 当前最新版本数据库查找与导出方法(图文详解)
在 Android Studio 中创建多个表的步骤如下:
1. 首先,在 Android Studio 中打开您的项目,并在项目的 app 文件夹中打开您的数据库帮助类。
2. 在您的数据库帮助类中,先创建一个表的代码如下:
```java
public class MyDatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "mydatabase.db";
private static final String TABLE_NAME = "mytable";
private static final int DATABASE_VERSION = 1;
public MyDatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE " + TABLE_NAME + " ("
+ "id INTEGER PRIMARY KEY AUTOINCREMENT, "
+ "name TEXT NOT NULL, "
+ "age INTEGER NOT NULL,"
+ "gender TEXT NOT NULL);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}
}
```
3. 然后,您可以通过类似如下的方式来创建另外一个表:
```java
public class MyDatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "mydatabase.db";
private static final String TABLE_NAME = "mytable";
private static final String TABLE_NAME_2 = "mytable2";
private static final int DATABASE_VERSION = 1;
public MyDatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE " + TABLE_NAME + " ("
+ "id INTEGER PRIMARY KEY AUTOINCREMENT, "
+ "name TEXT NOT NULL, "
+ "age INTEGER NOT NULL,"
+ "gender TEXT NOT NULL);");
db.execSQL("CREATE TABLE " + TABLE_NAME_2 + " ("
+ "id INTEGER PRIMARY KEY AUTOINCREMENT, "
+ "title TEXT NOT NULL, "
+ "description TEXT NOT NULL);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME_2);
onCreate(db);
}
}
```
在这个示例中,我们定义了另一个表的名称为 `mytable2`,并在 `onCreate` 方法中创建了一个新的 SQL 语句来创建该表。在 `onUpgrade` 方法中,我们需要删除这两个表并重新创建,以确保数据库版本升级时所有表都被正确创建。
4. 最后,在您的应用程序中,您可以通过实例化数据库帮助类对象来访问这些表:
```java
MyDatabaseHelper dbHelper = new MyDatabaseHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
```
现在您就可以使用 `db` 实例来执行对数据库的读写操作,并且您可以在代码中使用 `TABLE_NAME` 或 `TABLE_NAME_2` 常量来引用这些表。
阅读全文