外部キーが何に使用されているかを理解しているかどうかはわかりません。外部キーは基本的に「このエントリには親テーブルにエントリがなければならない」と言っています。 user_id is foreign key in vehicle table
とおっしゃいました 、それは私にはわかりません。
したがって、次のようなテーブル定義があると仮定しましょう:
CREATE TABLE vehicles
(`id_car` int, `car_model` varchar(2), `car_owner` int);
CREATE TABLE users
(`user_id` int, `user_name` varchar(5), `user_phone` varchar(7)
, CONSTRAINT `fk_your_foreign_key` FOREIGN KEY (user_id) REFERENCES vehicles(car_owner)
);
新しいユーザーをテーブルに挿入する場合、user_idは、Vehiclesテーブルのcar_owner列の既存のエントリである必要があります。
外部キーは、ビジネスルールを実装するためにあります。すべてのユーザーは必ずしも車の所有者である必要がありますか?または逆に、すべての車は誰かが所有している必要がありますか?いいえで両方の質問に答えることができる場合は、この場合の外部キーを実装しないでください。ただし、確かに「はい」と答えられる場合は、そうしてください。
探している情報を取得するには、
SELECT
*
FROM
vehicles
INNER JOIN users ON vehicles.car_owner = users.user_id