Hi,
I am learning SQL.
The following lines do not yield any error in SQLite.
However, the foreign key in table "ref_foo" has four columns, and references
table "foo" which has only 3 columns. Why is it possible?
This is just a dummy example to understand what happens with composite
foreign keys.
Thanks in advance,
Julien
PRAGMA foreign_keys = ON;
CREATE TABLE foo ( id_foo1 INTEGER NOT NULL
, id_foo2 INTEGER NOT NULL
, id_foo3 INTEGER NOT NULL
, PRIMARY KEY ( id_foo1, id_foo2, id_foo3 ) );
CREATE TABLE ref_foo (
id_reffoo INTEGER NOT NULL
, id_foo1 INTEGER NOT NULL
, id_foo2 INTEGER NOT NULL
, id_foo3 INTEGER NOT NULL
, PRIMARY KEY ( id_reffoo, id_foo1 )
, FOREIGN KEY ( id_reffoo, id_foo1, id_foo2, id_foo3 ) REFERENCES foo ON
UPDATE CASCADE ON DELETE CASCADE
);
--
python -c "print ''.join([chr(154 - ord(c)) for c in '*9(9&(18%.\
9&1+,\'Z4(55l4('])"
"When a distinguished but elderly scientist states that something is
possible, he is almost certainly right. When he states that something is
impossible, he is very probably wrong." (first law of AC Clarke)
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users