多言語 Web アプリケーションを開発していますが、データベース (SQL Server 2008) で特定のシナリオを処理する最善の方法を決定するのに苦労しています。
ユーザーが投稿を追加できるとしましょう。投稿には、デフォルトのデータとローカライズされたデータがあります。また、投稿は 1 つのカテゴリにのみ関連付けられます。ユーザーは、これらのローカライズされたカテゴリを管理することもできます。
投稿に関する部分は、私にはかなり明確です。それは次のようになります。
Posts
-----
PostId (auto incremented identity)
CategoryId
CreationDate
SortOrder
PostLocalizations
-----------------
PostId
LanguageId
Title
Content
私が抱えている問題は、カテゴリにデフォルトのデータがないことです。これは単なるテキストの説明であり、ローカリゼーションを保存する最善の方法が何であるかはわかりません。
可能な解決策を考えることができますが、あまり好きではありません。
Categories
----------
CategoryId (auto incremented identity)
CategoryLocalizations
---------------------
CategoryId
LanguageId
Name
自動インクリメント ID という 1 つの列しかないテーブルは好きではありません。もちろん、CreationDate や SortOrder など、実際には必要のないダミー フィールドを追加することもできますが、それはばかげているように思えます。
これを解決するより良い方法はありますか?