0

我在我的 SQLite 数据库中创建了一个视图,它包含两个 _id 列和此语句创建的一些其他信息:

CREATE VIEW IF NOT EXISTS journeyProfileContactsView AS SELECT JourneyProfile._id, JourneyProfile.TITLE, ContactsProfiles._id, ContactsProfiles.NAME, ContactsProfiles.NUMBER FROM ProfileToContacts INNER JOIN JourneyProfile ON ContactsProfiles._id=ProfileToContacts.contactID INNER JOIN ContactsProfiles ON JourneyProfile._id=ProfileToContacts.profileID

并且一直在努力解决这个错误一段时间:

11-27 19:30:04.686: E/AndroidRuntime(12946): Caused by: android.database.sqlite.SQLiteException: no such column: _id: , while compiling: SELECT * FROM journeyProfileContactsView WHERE _id=1

我确定该列确实存在,我已经在 SQLite Manager 中打开了视图,并且可以确认该列作为 _id 存在(另一列是 _id:1),尽管检查游标表明它实际上可能是 JourneyProfile._id .

我试过了:

"JourneyProfile._id=" + id
"_id=" + id

它真的难倒我,我不确定我哪里出错了。有什么帮助吗?

4

1 回答 1

0

问题在于使用旧视图。当表结构发生变化时,我强制重新创建我的视图,这已经解决了它。

于 2012-11-27T20:14:26.500 回答