What do you mean?
If you mean that it must be in the intersection of the two tables then two
foreign key declarations suffice. If you mean the union of the two tables
then you'll probably have to with triggers in your (unspecifed) RDBMS.
CREATE TABLE Foo
(foo_id INTEGER NOT NULL PRIMARY KEY,
..);
CREATE TABLE Bar
(_id INTEGER NOT NULL PRIMARY KEY,
..);
CREATE TABLE Foobar
(foo_id INTEGER NOT NULL
REFERENCES Foo(foo_id),
bar_id INTEGER NOT NULL
REFERENCES Bar(bar_id),
..);
CREATE TABLE <TABLE_NAME>
(
<COLUMN 1> <TYPE>,
<COLUMN 2> <TYPE>,
...
<COLUMN N> <TYPE>
FOREIGN KEY (<COLUMN NAME BEING REFERENCED>) REFERENCES
<OTHER_TABLE_NAME> (<COLUMN NAME BEING REFERENCED>),
FOREIGN KEY (<COLUMN NAME BEING REFERENCED>) REFERENCES
<OTHER_TABLE_NAME> (<COLUMN NAME BEING REFERENCED>)
);
This will do. & if you want to give this constraint a name, so that
you can later on remove or modify it, you can give it a name by
CONSTRAINT <CONSTRAINT NAME> FOREIGN KEY...
this constraint name should be unique within a schema.