我无法打开一个数据库文件

时间:2019-11-14 11:42:39

标签: java database sqlite android-studio

MainActivity.java

public class MainActivity extends AppCompatActivity {

    DbHelper dbHelper;

    ...

    dbHelper = new DbHelper(this, 1, "garbage.db"); // I just only changed this 3rd argument so i think the problem is because of the db file itself not the code

    try {
        dbHelper.openDatabase();
    } catch (Exception e) {  // I got error here
        e.printStackTrace();
    }
    try {
        dbHelper.createDatabase();
    } catch (Exception e) {
        e.printStackTrace();
    }

    ...

}

DbHelper.java

public class DbHelper extends CopyDatabase {

    ...

    public DbHelper(Context context, int version, String databaseName) {
        super(context, version, databaseName);
        mcontext = context;
    }

    ...

}

我只想在我的Assets文件夹中打开一个sqlite db文件,然后成功打开了我在互联网上找到的一个.db文件。

但是它没有包含我想要的确切数据,所以我只是尝试制作一个。

首先,我使用数据库浏览器工具来创建我的sqlite数据库文件。 我使用该工具执行查询并创建了一个.db文件。

然后我将其移至资产文件夹,并尝试仅通过更改DBhelper构造函数的第三个参数(即引用db文件的名称)来打开它。 但这没有用。 这是错误代码

android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14 SQLITE_CANTOPEN): Could not open database

我认为可能是因为我使用数据库浏览器工具创建了我的db文件,所以我仅在shell脚本中使用sqlite3制作了一个文件,但效果不佳。

因此,我最后一次使用sqlite jdbc库进行了尝试,并使用eclipse创建了一个.db文件。

那没有用。

所以我被困在这里。

此问题的原因是什么?

0 个答案:

没有答案