Giải pháp thông thường cho việc này là tạo một bảng giao nhau:
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)
);
Sau đó, bạn thả v_id từ owners .
Bảng này cho phép mỗi owners để sở hữu nhiều vehicles và mỗi vehicles có nhiều owners . Nếu bạn muốn thực thi ràng buộc một chủ sở hữu trên mỗi phương tiện, hãy thêm UNIQUE lập chỉ mục cho vehicles_owned.v_id .
CHỈNH SỬA:Tất nhiên, nếu bạn muốn thực thi ràng buộc một chủ sở hữu cho mỗi chiếc xe, bạn cũng có thể chỉ cần thêm o_id tới vehicles làm khóa ngoại và không bận tâm đến bảng giao nhau.