2013-06-12 103 views
0

我在与来自包含外键我的SQLite表中删除的行中的麻烦,无法删除包含行的外键

   public void deleteUpload(int id) 
      { 
       database.delete(MySqlHelper.TABLE_UPLOAD, MySqlHelper.COLUMN_ID_ARTICLE 
         + " = " + id, null); 
      } 

我不断收到此错误:

android.database.sqlite.SQLiteConstraintException: error code 19: constraint failed at android.database.sqlite.SQLiteStatement.native_execute(Native Method) at android.database.sqlite.SQLiteStatement.execute(SQLiteStatement.java:55) at android.database.sqlite.SQLiteDatabase.delete(SQLiteDatabase.java:1598) at fr.sunIt.database.DataSource.deleteUpload(DataSource.java:183)

+0

假设'COLUMN_ID_ARTICLE'是表的主键,那么哪些表有一个与'COLU的关系MN_ID_ARTICLE'作为外键?必须是一些或你不会得到这个错误。也许即使是自己加入这篇文章也可能是孩子的父母?运行这个来查看系统是否认为有一些...'''''''SELECT sql from sqlite_master WHERE sql LIKE'%REFERENCES%'和sql'%TABLE_UPLOAD%'' – xQbert

回答

0

你必须删除所有对这个外键的所有条目,它被引用为

+0

我不想删除主键。 –