【问题标题】:Table not creating on android device but creating on the virtual device表不在android设备上创建,而是在虚拟设备上创建
【发布时间】:2020-04-13 10:06:46
【问题描述】:

所以我试图在 android studio 中创建一个数据库和一个表。数据库创建成功,但是当我使用我的安卓手机时没有创建表,但是当我使用来自 AVD 的虚拟设备时,数据库和表都被创建了。

public class Databases extends SQLiteOpenHelper {

    public static  final String dbname = "AttendanceDb11";

    public Databases(@Nullable Context context) {
        super(context, dbname, null, 2);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        String CREATE_TABLE = "CREATE TABLE Student12 ( _id INTEGER PRIMARY KEY AUTOINCREMENT, Name Text)";
        db.execSQL(CREATE_TABLE);
    }

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

这是我的代码

【问题讨论】:

  • 可以分享崩溃日志吗?
  • CREATE TABLE IF NOT EXISTS .请分享 logcat

标签: android database sqlite android-studio


【解决方案1】:

在您创建表格之前,该应用似乎已安装。我会执行以下操作之一:

1:卸载并重新安装应用程序。

2:最好和更好的方法是在 onUpdate 方法中删除并重新创建表,并在更改架构时增加数据库版本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-09
    • 1970-01-01
    • 2011-09-24
    • 2011-06-28
    相关资源
    最近更新 更多