2013-08-22 2 views
0

이봐 요, "SQL 오류 : 외래 키 제약 조건이 실패했습니다"라는 오류가 발생하기를 기대합니다. 그러나 이런 일은 결코 일어나지 않습니다. 왜 그런지 설명 할 수 있습니까? 안드로이드에서 sqlite3 db로 작업하기.외래 키 제약 조건 오류가 발생하지 않는 이유는 무엇입니까?

sqlite> CREATE TABLE first (id text, value text); 
sqlite> CREATE TABLE second (id text, ref text, foreign key(ref) references first(value)); 
sqlite> INSERT INTO first VALUES("1", "one"); 
sqlite> INSERT INTO first VALUES("2", "two"); 
sqlite> INSERT INTO second VALUES("1", "three"); 

"three"를 삽입 할 수는 있지만 첫 번째 표에는 "three"가 없습니다. 나는 혼란스러워.

+0

가능한 복제본 [Java를 통해 SQLite에서 외래 키 제약 조건을 어떻게 적용합니까?] (http://stackoverflow.com/questions/9774923/how-do-you-enforce-foreign-key-constraints-in -sqlite-through-java) –

답변