ユーザーと言語の2つのテーブルがあるとしましょう
user (Table Name)
-----------------
user_id (PK)
user_name
mobile
...
....
language (Table Name)
---------------------
lang_code (PK)
lang_name
...
....
質問は、ユーザーと言語テーブル (多対多) の間に関係を追加したい場合、どちらが正しい方法ですか?
solution 1
user_language (Table Name)
--------------------------
user_id (FK)
lang_code (FK)
or solution 2
user_language (Table Name)
--------------------------
user_id (PK)
lang_code (PK)
or solution 3
user_language (Table Name)
--------------------------
user_lang_id (PK)
user_id (FK)
lang_code (FK)
多くの人が多対多テーブルに主キーを追加するのを見ましたが、それは重要ではなく、スペースを無駄にしていると思います。どちらが正しいですか?
ところで私はPostgreSQLを使用しています