外键约束失败 - sqlite3 - Android

时间:2013-06-22 07:08:46

标签: android sqlite android-sqlite

我的应用程序我有一个表PROJECTS。表的架构如下。

CREATE TABLE PROJECTS (Id INTEGER PRIMARY KEY, Name TEXT, ParentId INTEGER, FOREIGN KEY  (ParentId) REFERENCES PROJECTS (Id) ON DELETE CASCADE ON UPDATE CASCADE);

PRAGMA foreign_keys 但是,当我尝试从java代码更新一行时,它会引发异常android.database.sqlite.SQLiteConstraintException 显示foreign key constraint failed (code 19)

mDatabase.update(mTableName, getContentValues(projectObject), primaryKeyColumn + "=?", new String[] { projectObject.getId()});

我找不到为什么它失败了虽然 ON UPDATE CASCADE 约束是外键的。

注意 getContentValues()方法用于从提供的值对象创建android.content.ContentValues对象。

0 个答案:

没有答案