1

クライアント向けのウェブサイトを作成していますが、問題に遭遇したため、アドバイスが必要です。

プロジェクトごとに、さまざまな量の画像と (場合によっては) 対応するテキストを設定できるようにしたいと考えています。

99 個のフィールドが必要な場合に備えて、field_1 から field_99 にするのではなく、すべての情報を 1 つのフィールドに格納することを考えていました。

// database column

'../fotos/foto1.png',
'hier komt tekst',
'../fotos/foto2.png',
'', (empty text)
'../fotos/foto3.png'

このソリューションにはいくつかの欠点があります。これを実現するには、より良い方法が必要です。

これを行うための好ましい方法は何ですか?

4

2 に答える 2

3

foto の可能性のあるすべての値を含む別のテーブル (FOTO_CODES など) を作成し、それらの ID を生成します。

FOTO_CODES テーブルと FOTO データ (画像) からのマスター テーブル レコード ID と ID を持つ別の子テーブルを作成します。

ノーマライゼーションといいます。

于 2012-06-04T12:33:44.760 に答える
0

あなたが説明した解決策は、原子性の原則に違反しているため、1NFに違反しています。この形式のデータを維持したり、クエリを実行したりするのは困難です。

これは古典的な 1 対多の関係であり、次の 2 つの方法でモデル化できます。

1) 識別関係:

ここに画像の説明を入力

2) 非識別関係:

ここに画像の説明を入力

どちらにも長所と短所があり、StackOverflow ではこのトピックについてすでに多くの議論が行われています。

于 2012-06-04T16:24:13.697 に答える