0

多対多のテーブル、リレーショナル データベースを作成する場合。たとえば、ユーザーが Web 上の画像フォームをスクレイピングしてタグ付けできるようにしている場合。次のようにしたほうがよいでしょうか:

  1. イメージがデータベースに既に存在するかどうかを確認し、存在する場合はリレーショナル テーブルにリンクを作成し、存在しない場合は新しいイメージを作成します。

  2. すべてのユーザーに対して画像の一意のインスタンスを作成し、最も人気のある画像を表示する場合は、重複が最も多い画像を選択して並べ替えます

これが理にかなっていることを願っています。よろしくお願いします。

4

1 に答える 1

1

USERSテーブルとテーブルに相当するものがあると思いPICTURESます。また、多対多の関係を分割するためのテーブル。 U2P私はそれを呼びます。

オプション 1 としてリストしたオプションは、推奨される方法のようです。画像がDBにあるかどうかを確認し、それにPICTURES対応する主キーを取得するかどうかを確認します。そうでない場合は、写真をPICTURES表に入れます。

それが新しい画像であるか、既にそこにある画像であるかに関係なく、イベントをテーブルに挿入しU2Pます。これは、USERS主キーとPICTURESイベントに対応する主キーを参照します。時間などの他のデータも記録します...

于 2012-12-12T13:33:30.487 に答える