2012-04-17 13 views
1

翻訳が必要なアイテムがたくさんあり、3つのテーブルがあります。 LanguagesFruitsFruitNames多言語表 - 複合キーはどうやって行くのですか?

これは私が1つの項目の同じ言語の二つの名前を必要とすることはありません、使用することの利点があると仮定すると(MS SQLで)

CREATE TABLE [FruitNames] (
    [LanguageId] INT NOT NULL , 
    [FruitId] INT NOT NULL , 
    [name] NVARCHAR(100) NOT NULL , 
    FOREIGN KEY (LanguageId) REFERENCES Languages(id), 
    FOREIGN KEY (FruitId) REFERENCES Fruits(id), 
    PRIMARY KEY ([LanguageId],[FruitId]) 
) 

を使用するコードです複合キー?

+0

果物の説明があるかもしれません。唯一のものがある限り、同じテーブルに入れています。 – Daniel

+0

フルーツカテゴリ(多対多)(カテゴリも同様に翻訳されます) – Daniel

答えて

1

私には複合キーの候補としてはかなり良いと思われます。私は全体的なスケーラビリティについて話すことはできませんが、翻訳しているのは果物の名前だとすれば、これはうまくいくはずです。

+0

私はそれを逃しています。なぜこれは十分な候補者ではないのでしょうか?そして完璧な候補者は何ですか? – Daniel

+0

@climbage:ああ、私はそれを逃した。私はテーブルの説明を何度か読み、それを見ませんでした。 *眼鏡のために行った – zerkms

+0

@zerkms haha​​ phew。あなたは私の正気に疑問を呈した – climbage

関連する問題