0

さて、私のサイトは、さまざまなユーザー定義オブジェクトの動的なユーザー入力画像が中心です。だから私は多くのオブジェクトを持っており、それらのオブジェクトには画像があります。

「画像名」列と「画像バイト数」列が何度も繰り返されるため、画像をオブジェクトのように扱うのは良い習慣ですか? それとも、各オブジェクトのテーブルにこれら 2 つの列を含めるだけの方が賢明でしょうか。

入力中に自分の質問に答えていると思います...追加の結合と追加の列を作成しています(各テーブルに名前、ID、およびImageIdを持つ3つがあります"

ただし、オブジェクトごとに複数の画像を含むテーブルがいくつかあります...だから、もっと良いと思います???? 意見?

4

3 に答える 3

4

通常、ファイルをより一般的に格納する Files テーブルがあります。次に、他のテーブルに、ファイル テーブルへの単なる参照である各画像 (ファイル) の列を作成できます。

ファイルテーブルには、ID、ファイル名、サイズ、タイプなどのすべての通常のものがあります。そうです、実行しているクエリに必要なものを取得するためにそれに参加するだけです。

疑問がある場合は、ファイルをデータベースに直接保存しないことを強くお勧めします。私はそれがあなたの後であるとは思いませんが、他の誰かがその考えを理解しているなら、それをしないでください!

于 2009-01-07T01:20:07.050 に答える
0

尋ねるべき質問は、「同じ画像を持つオブジェクトが複数あるかどうか」です。もしそうなら、冗長性について考えたいと思うかもしれません。また、使用しているデータベースは「ブロブ」をうまく処理していますか? または、画像へのファイルパスを保持し、画像を個別に保存する方が良いでしょうか>

于 2009-01-07T01:22:00.710 に答える
0

直感的には、イメージとオブジェクトを別々の概念として扱う方が簡単だと思います。より柔軟に感じるだけです。

画像以外のものを特定のオブジェクトに添付する必要がある場合は、オブジェクト テーブル エントリを「その他のもの」テーブル エントリに関連付けるのと同じくらい簡単になりますが、おそらく外部キーが指す方向を交換する必要があります。また、これらの画像を他のユーザー オブジェクトで使用したり、ユーザーが他のユーザーの画像を借りたりすることもできます。

このアプローチの欠点は、1 つ以上のテーブルを結合する必要があるため、パフォーマンスが少し低下することです。ただし、データベース クエリ アナライザーが十分に優れている場合は、おそらく大したことではありません。

于 2009-01-07T01:23:35.280 に答える