我正在Android中的SQLite数据库中实现外键。
我的数据库在没有FK的情况下运行良好,但现在,我有几个问题。
一个是当我尝试引用db时,我有这个错误。
E/SQLiteLog﹕ (10) Failed to do file read, got: 0, amt: 100, last Errno: 2
我的功能:
public synchronized SQLiteDatabase openDatabase() {
if (mOpenCounter.incrementAndGet() == 1) {
// Opening new database
mDatabase = mDatabaseHelper.getWritableDatabase();
// Get Foreign Key Support
mDatabase.execSQL("PRAGMA foreign_keys=ON");
}
return mDatabase;
}
错误发生在以下行中:
mDatabase = mDatabaseHelper.getWritableDatabase();
这似乎是第一次调用此行。 其他时间,没有pb。 我不确定它会给我带来直接错误,但我在SQLite中遇到了一些问题,所以它可能导致不良行为。
的Tx
答案 0 :(得分:1)
试试这个:
Label
答案 1 :(得分:0)
不确定这是否也是你的情况。我刚刚遇到这个,我试图做的是从我的服务器下载一个sqlite压缩转储并将其解压缩为我的SQLite数据库。我使用了这个blog post as my guide(2016年仍然运作良好)。
我得到了和你一样的错误,当我将zip文件下载到我的笔记本电脑并尝试解压缩时(还有其他帖子说如果新数据库的结构发生变化,你会遇到这个错误然后你忘了更新你的数据库版本号)所以我可以到原始的sql文件,我收到“无法扩展...错误2”错误 - 意味着该zip文件已损坏。
我正在尝试获取zip文件的更新版本/备份以测试此理论,但到目前为止,所有道路都指向损坏的zip文件。我会保留这个。