Я думаю, что наиболее подходящие отношения pk-fk между ProductId в таблице Product и ProductId (без языка) в таблице ProductName. Поле в таблице Product - это pk, а поле в таблице ProductName - это fk. Это обеспечит отсутствие записей в таблице PeoductName, которые не соответствуют записи в таблице ProductName.
Если вы хотите относиться к языку аналогично, вы можете создать таблицу языков с полем LanguageId. затем создайте поле LanguageId в таблице ProductNames и сделайте его fk.
при получении информации о продукте вы СОЕДИНЯЕТЕ Product и ProductName в их полях ProductId, а затем указываете LanguageId в предложении WHERE.