-1

次のようなテーブルがあるとします。

CREATE TABLE t1 (
  col1 int,
  col2 int
);

およびこれらの属性を分類する「メタデータ テーブル」:

CREATE TABLE t2 (
 attribute varchar,
 description varchar
);

したがって、サンプル データは次のようになります。

t1:

col1  | col2
------+------
 4    |   6

t2:

attribute   | description
------------+--------------
 col1       |  first column
 col2       |  second column

このアプローチを使用することの長所と短所は何ですか? それは確かに私を不快にさせますが、はっきりとした反論を言葉にすることはできません.

編集:この設計は、すべてが1つのテーブルに格納される可能性があるEntity-Attribute-Valueデータモデルに向かう傾向があるため、不快に感じます。つまり、データモデルはあまり意味を捉えなくなります。これが実際にどれほどの問題であるかを定量化しようとしています。

4

1 に答える 1

1

あなたが説明しているのはエンティティ属性値( EAV ) またはおそらく行モデリングのようです。これらの用語で検索します。いくつかの利点と非常に多くの欠点があることがわかります。

データ モデルのリポジトリにメタデータを格納することは適切です。スキーマでメタデータ リポジトリをモデル化することは、ほぼ確実に不必要であり、役に立ちません。

于 2013-01-03T14:57:02.407 に答える