我有一个微调器,其中填充
SELECT * FROM sqlite_master WHERE type = 'table'
我使用该微调器来提供其他数据库操作。我的一些表可以使用,其他表失败,但有以下例外,具体取决于尝试的操作:
android.database.sqlite.SQLiteException: no such table: main.labs: , while compile: INSERT OR REPLACE INTO methods(name) VALUES(?);
11-16 06:32:01.927:E/Database(25403):在准备“DROP TABLE equipment_types”时,0x1d6e48 上的故障 1(没有这样的表:main.labs)。11-16 06:32:01.927: E/AssistantData(25403): drop table failed with exception: android.database.sqlite.SQLiteException: no such table: main.labs: DROP TABLE equipment_types
我一直在寻找与表格的各种特征相关的成功/失败模式,但似乎没有模式。
这是一个正在工作的表的创建语句:
db.execSQL("
CREATE TABLE IF NOT EXISTS oel_sources
(_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
name TEXT NOT NULL, UNIQUE (name))");
一个不起作用:
db.execSQL("
CREATE TABLE IF NOT EXISTS methods
(_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
name TEXT NOT NULL, UNIQUE (name))");
这些表中的每一个都有另一个表,其外键指向_id。
我已经删除了数据库
context.deleteDatabase(DB_NAME));
我还通过应用程序管理器将其删除,完全卸载,然后重试。工作与不工作似乎在删除/重新创建时是一致的。
最后,我完全不知所措。任何想法将不胜感激!