2

Frost、Day、van Slyke による "Database Design and Development: A Visual Approach" から学んでいます。

第 5 章では、部分的または全体的、ばらばらまたはオーバーラップの特殊化を示す関係を示します。

残念ながら、MySQL Workbench でそのようなことを図示する方法がわかりません。グーグル検索でもあまり出てこない。それらについてSQLだけで質問した人が「リレーショナルデータベースのモデルがわからない」と言われるという結果が出て、本当に困りました。

私の本では、これがディスクスペースを節約できる例を挙げており、リレーショナル モデルの完全に有効な部分であると述べています。しかし、Workbench には表示されないようです。

Workbench でスペシャライゼーションを示すにはどうすればよいですか? この本では、例として「学生」、「運動選手」、および「評議員」のテーブルを使用しています。ここで、学生は、運動選手、生徒会のメンバー、またはその両方になることができます。

編集:多かれ少なかれ同じ質問をしている人々へのリンクがいくつか見つかりました。これは、 mysqlフォーラムのユーザーへのリンクです。彼は、基本的に彼の質問を無視する迷惑な返信を受け取りました。DevShedの質問へのリンクを次に示します。彼は何の返事もありませんでした。EERという名前が示唆しているにもかかわらず、機能がワークベンチに存在しないと思われます。

4

3 に答える 3

2

わかりました、私は解決策を見つけたと思います!2つのエンティティ間の線をクリックすると、接続の両側に2つのボックスが表示されますMandatory。これがトータル参加です。少なくともそれは私のために働いた。O参加する側には完全な参加がないことに気付くでしょうが、チェックを外すとO、エンティティの側で部分的に参加することになります。

于 2013-01-22T13:24:48.977 に答える
1

私はSQLの初心者でもあり、以前にも同様の問題がありましたが、今は頭がすっきりしたと思うので、共有したいと思います。

私が間違って教えられていなければ、あなたが言及した仕様(部分的または全体的および分離またはオーバーラップの特殊化)はER図(つまり、エンティティ関係図)で図解できませんが、mysql(および他のよく知られているデータベースソフトウェア)にはありますこれはカバーしました。基本的に、トリガー、チェック、およびアサーションを通じて、この種の制約を適用します。また、mysql ワークベンチも使用しています。トリガーを作成することもできます。

トリガー、チェック、アサーションについて詳しく知りたい場合は、jellomonkey の回答をお読みください: トリガー、アサーション、チェックの違いは何ですか (データベース内)

于 2012-07-10T14:54:32.507 に答える
0

下部のエンティティをダブルクリックすると、エンティティ間にインデックスと外部キーを作成できると思います。作成されると、ダイアグラムが更新され、エンティティ間の関係を表す線が表示されます。

テーブルの構造と関係についてさらに詳細を提供していただければ、それを表現することができます。

このようなものですか、あなたはhttp://grab.by/ank7を求めています

于 2011-06-17T08:18:28.633 に答える