> Is this legal to have a foreign key that references several tables? Why not? I'd say it's a very bad database design (or extremely rare and questionable reason to do that) but there's nothing wrong in it from SQL point of view.
Pavel On Wed, Oct 13, 2010 at 6:55 AM, TP <paratribulati...@free.fr> wrote: > Hello, > > I have another "borderline" question about SQL in SQLite. Look at the > following example > > ------------------------------------------- > PRAGMA foreign_keys = ON; > > CREATE TABLE toto1 ( id_toto1 INTEGER PRIMARY KEY > , id_toto2_and_toto3 INTEGER NOT NULL > , FOREIGN KEY ( id_toto2_and_toto3 ) REFERENCES toto2 ON > UPDATE CASCADE ON DELETE CASCADE > , FOREIGN KEY ( id_toto2_and_toto3 ) REFERENCES toto3 ON > UPDATE CASCADE ON DELETE CASCADE ); > CREATE TABLE toto2 ( id_toto2 INTEGER PRIMARY KEY > , name VARCHAR ); > CREATE TABLE toto3 ( id_toto3 INTEGER PRIMARY KEY > , name VARCHAR ); > > -- The two following lines are needed, otherwise "foreign key constraint > -- failed" is obtained. > INSERT INTO toto2 ( name ) VALUES ( "foo" ); > INSERT INTO toto3 ( name ) VALUES ( "bar" ); > > INSERT INTO toto1 ( id_toto2_and_toto3 ) VALUES ( 1 ); > ------------------------------------------- > > Is this legal to have a foreign key that references several tables? > > Thanks, > > Julien > > -- > 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 > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users