TIMES と呼ぶ db テーブルがあります。これは伝統的に次のようなものです。
ID Blah1 Blah2 Blah3 Description
1 a b c Day
2 d e f Night
(Blah 列を追加したのは、主に、テーブルに存在する列が他にもたくさんあることを示すためですが、これらは、行おうとしているアップグレードには直接関係しません。)
データベースから取得した結果に言語サポートを追加したいと考えています。したがって、私の提案は次のいずれかでした。
a) 怠惰な道をたどって、言語用の新しい列を追加するだけで、
ID Blah1 Blah2 Blah3 Description Language
1 a b c Day English
2 d e f Night English
1 a b c Tag German
2 d e f Nacht German
または、できれば、b) 正規化を行い、関連する値だけの新しいテーブルを作成します。
ID Description Language
1 Day English
2 Night English
1 Tag German
2 Nacht German
DB担当者は、元のテーブルを使用して、すべてをxmlに含めることができると言いました...そうすれば、行を節約できます。
ID Blah1 Blah2 Blah3 Language
1 a b c <TimeDescriptions>
<TimeDescription language='English'>
Day
</TimeDesciption>
<TimeDescription language='German'>
Tag
</TimeDesciption>
</TimeDescriptions>
2 d e f <TimeDescriptions>
<TimeDescription language='English'>
Night
</TimeDesciption>
<TimeDescription language='German'>
Nacht
</TimeDesciption>
</TimeDescriptions>
「行を保存」?私は実際にはdbの男ではありませんが、それは私には奇妙に聞こえます. 確かに、それはいくつかの行を節約します...しかし、行自体がはるかに長い場合、それは全体的に勝利ですか? (非常に可能性があります)それ以上に、私が慣れ親しんでいる正規化のルールに違反しているようです。また、SQL で XML を使用して検索できることも知っています (私はそれを行ったことがなく、詳細については非常に漠然としています) が、これで勝てるとは思えません。
私がそれについて尋ねているとき、彼はチクチクし始めたので、私は後退しましたが、何かが足りないかどうか知りたい. 明らかに多くの詳細が欠けていますが、詳細な分析を求めているわけではありません...これが合理的である可能性があるかどうかを知りたいだけです.
編集:ああ。あなたは、私が正しいフォーマットを学ぶのに十分長い間ここにいたと思うかもしれませんが、私はどういうわけかその最後のビットを台無しにしています.私はそれを修正しようとしますが、他の編集は大歓迎です.