Den vanliga lösningen på detta skulle vara att skapa en skärningstabell:
CREATE TABLE vehicles_owned
(
o_id INT,
v_id INT,
PRIMARY KEY (o_id, v_id),
FOREIGN KEY (o_id)
REFERENCES owners (o_id),
FOREIGN KEY (v_id)
REFERENCES vehicles (v_id)
);
Du släpper sedan v_id
från owners
.
Den här tabellen tillåter varje owners
att äga flera vehicles
, och varje vehicles
att ha flera owners
. Om du vill upprätthålla en begränsning för en ägare-per-fordon, lägg till en UNIQUE
indexera till vehicles_owned.v_id
.
EDIT:Naturligtvis, om du vill upprätthålla en begränsning för en ägare-per-fordon, kan du också helt enkelt lägga till o_id
till vehicles
som en främmande nyckel, och inte bry dig om skärningstabellen.