gpt4 book ai didi

android - 每次我运行我的应用程序时都会创建 Android 数据库吗

转载 作者:太空宇宙 更新时间:2023-11-03 13:18:57 26 4
gpt4 key购买 nike

我是 Android 应用程序开发的新手,我正在创建一个创建数据库的应用程序。我有几个问题。

  1. 每次我启动我的应用程序时,我的应用程序会创建一个新数据库还是会使用以前的数据库。

  2. 如果是,那么如何停止它并使用以前的数据库。

  3. 我正在使用物理设备而不是使用模拟器来运行我的应用程序...我如何查看我的数据库在哪里

以下是我的代码

public class ExternalDbOpenHelper extends SQLiteOpenHelper {
public static final String DB_Name = "mydatabase";
public static final String Table_Name = "Records";

public ExternalDbOpenHelper(Context context) {
super(context, DB_Name, null, 1);
SQLiteDatabase db = this.getWritableDatabase();
}

@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table " + Table_Name + " (ID INTEGER PRIMARY KEY AUTOINCREMENT, col1 text) ");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("Drop table if exists " + Table_Name);
}
}

最佳答案

您的数据库是在您第一次使用时创建的。稍后 Android 使用相同的数据库文件。

即使升级了数据库版本也不会自行删除,会发生什么取决于

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//here you can migrate your data or just drop all tables
}

要在没有 root 的情况下在真实设备上查看您的数据库,您可以使用另一个线程中提供的方法:android adb, retrieve database using run-as

如果您在模拟器上运行您的应用程序,您可以直接看到数据库文件。

关于android - 每次我运行我的应用程序时都会创建 Android 数据库吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31618996/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com