これに対する通常の解決策は、交差テーブルを作成することです。
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へ 外部キーとして、交差テーブルを気にしないでください。