作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有 2 个表:
表1- create table table1(_id integer primary key, content text not null );
Table 2- create table table2(_id integer primary key, id_parent integer, content text not null , CONSTRAINT [FK_table2_id_parent] FOREIGN KEY (id_parent) REFERENCES table1 (_id) ON DELETE CASCADE );
但是 DELETE CASCADE
没有做任何事情...有人知道我做错了什么吗?
[编辑:
当我尝试从 table1 中删除行时,我可以,但是当我查找 table2 时,记录都在那里......甚至那些拥有 id_parent 的 id_parent 从 Table1 中不再存在。]
我正在使用 android 2.2。
最佳答案
首先确保您使用的创建表命令在语法和逻辑上都是正确的。
如果是,那么这是由于以下原因:
声明和定义外键并不能真正应用它们来执行操作。您需要在数据库中明确外键约束。
if (!db.isReadOnly()) {
// Enable foreign key constraints
db.execSQL("PRAGMA foreign_keys=ON;");
}
关于android - 关于删除级联android 2.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10634762/
我是一名优秀的程序员,十分优秀!