これに対する通常の解決策は、交差テーブルを作成することです。
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)
);
次に、v_id
を削除します owners
から 。
このテーブルでは、各owners
が許可されます 複数のvehicles
を所有する 、および各vehicles
複数のowners
を持つ 。車両ごとに1人の所有者の制約を適用する場合は、 UNIQUE
を追加します vehicles_owned.v_id
へのインデックス 。
編集:もちろん、車両ごとに1人の所有者の制約を適用する場合は、o_id
を追加することもできます。 vehicles
へ 外部キーとして、交差テーブルを気にしないでください。