2

はっきりとは考えていないかもしれませんが、仕事で既存のデータベースの関係を視覚的に表現するように頼まれました。私は、「Person-PersonProfession-Profession」(PersonProfessionは連想的なもの)などの連想的な多対多の関係に慣れています。

今、私は「Person-PersonAssociation-Person」のような関係に出くわしました。それでも多対多ですが、各個人は1つ以上の...個人(同じエンティティ)に関連付けられています。

再開すると、2つのテーブル(PersonPersonAssociation)しか取得できませんでした。PersonAssociationには、フィールド[personA]と[personB]のみが含まれます。

それらの間に1対多の線を引くと、「彼らは何に関連付けられているのか」とは言わずに、各人には複数の関連付けがあると言うことになります。

このアプローチは私には問題ないように見え、これまでのところうまく機能していますが、それを表現する方法がわかりません。同様の経験を持つ人は、この状況をどのように表現するかについてアイデアを持っていますか?

よろしくお願いします、ラウル・カルドソ

4

2 に答える 2

1

ERDでは次のようになります。多対多の場合は、別の方法があります。関係エンティティを明示的に表示するかどうかによって異なります。私は次のいずれかの場合にそのようなエンティティを表示します:私の目的がより実装ベースである場合、私はそれを表示します(ただし、私の意図がより「論理的」/概念的である場合はそうではありません。また、関係自体にいくつかの属性がある場合、私はそれを表示します(たとえば、「友情エンティティは、友情が始まったときなどを表示する場合があります)。

サンプルERD

グーグル、私はERDのコースからこのPDFを見つけました。あなたはそれが役立つと思うかもしれません

于 2013-03-11T17:45:37.457 に答える
0

それを表現するために...どのように?ある種の図のことですか?実体関連図のように?

それがあなたの言いたいことなら、これを表現するための従来の方法は次のいずれかです。

(a)エンティティからそれ自体に線を引きます。

(b)エンティティからそれ自体に線を引き、その線に「レポート先」や「のいとこ」などの関係の性質を示すラベルを付けます。

(c)関係を表すためにひし形を描画し、次にエンティティから関係ダイヤモンドに線を引き、関係ダイヤモンドからエンティティに戻る別の線を描画します。ダイヤモンドの内側に適切なラベルを付けます。

ところで:これは「再帰的な関係」と呼ばれ、まったく珍しいことではありません。

于 2013-03-11T17:34:42.503 に答える