let say i have two table, User and Language
user (Table Name)
-----------------
user_id (PK)
user_name
mobile
...
....
language (Table Name)
---------------------
lang_code (PK)
lang_name
...
....
The Question is, if i want to add relationship between user and language table(Many to many) which is a right way ?
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)
i saw many people add primary key on many to many table, but i think that not important and wasting space. so which is right ?
btw i'm using PostgreSQL