1

問題があります。さまざまな製品を格納するデータベースを設計しており、各製品の詳細が異なる場合があります。例として、複数の著者の本を保存したり、さまざまな種類の説明を含むソフトウェアを保存したりする必要があります。これは私の現在のデザインです:

Product_table

|ID|TYPE|COMPANY|

|1|1|1|

attr_table

|ID|NAME|
|1|ISBN10|
|2|ISBN13|
|3|Title|
|4|Author|

details_table

|ID|attr_id|value

|1|3|Book of adventures|

Connector_table

|id|pro_id|detail_id|
|1|1|1|

したがって、product テーブルには、メインの製品 ID、所属する会社、および製品のタイプのみが格納されます。次に、製品が持つことができる各属性をリストする属性テーブルを用意します。これにより、新しいタイプの製品を簡単に追加できます。詳細テーブルには、さまざまな作成者、タイトル isbn10s などのすべての値が保持されます。次に、コネクタ テーブルが製品テーブルと詳細テーブルを接続します。

私の主な懸念は、詳細テーブルが非常に大きくなり、さまざまなデータ型が多数格納されることです。私が望むのは、さまざまなタイプのすべてを ISBN テーブルや著者テーブルなどのテーブルに分割することです。

この場合、これらのテーブルを attr_table にリンクするにはどうすればよいですか

どんな助けでも大歓迎です。

4

1 に答える 1

0

気にしないでください。どのデータベースを使用しているかはわかりませんが、適切なデータベースであれば詳細テーブルを処理できます。データベースは、大きなテーブルを効率的に処理できるように設計されています。

非常に大きい場合は、何らかのテーマでテーブルを分割することを検討してください。

それ以外の場合は、テーブル内の id にインデックスがあり、おそらく attr_id にもインデックスがあることを確認してください。構造は正常に機能するはずです。

于 2013-01-17T22:55:49.613 に答える