問題タブ [erd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1969 参照

entity-relationship - 奇妙な動作をするデータベース (ERD) のモデル化

私が取り組んでいるデータベースの 1 つに、エンティティ関係図で説明したい風変わりな動作があります。

動作の 1 つは、「予約」テーブルと「請求書」テーブルがあることです。「予約」が請求されると、レコードが「請求」テーブルに挿入され、「予約」テーブルから削除されます。

ただし、予約番号の参照は引き続き保持されます。

これをどのようにモデル化しますか?表の間の大きな矢印と、何が起こるかを説明するその横のテキスト?

いいえ、現時点ではデータベース スキーマを変更することはできません

編集: これは私が使用したい図のタイプです: 代替テキスト http://img813.imageshack.us/img813/5601/erdartistperformssong.png リンク

0 投票する
5 に答える
6627 参照

sql - mySQL データベース (800 以上のテーブル) の ER ダイアグラムを印刷する

Parallels によって構築されたシステムがあり、すべてを維持するために巨大な (800 以上) テーブルに依存しています。

さまざまなニーズに応じてレポートを生成するためのデータを取得するためのクエリを作成できるようにするために、このシステムを学習する必要があります。

私は明らかに、目の前のタスクに現在関連しているテーブルを特定するのに苦労しているので、テーブルのシステム全体に対して、複数のページにわたって ERD を生成して印刷するのが最善の方法であると考えました。

TOAD を使用してすべてのテーブルをドラッグしようとしましたが、クラッシュしました :) 2 回目の試行で、テーブル AN をドラッグし、(長い) しばらくして、MZ テーブルを正常にドラッグしました。

それらをすべてサイズ変更し、整理して、ERDをファイルに保存することさえできました。

ただし、印刷またはプレビューに入ると、印刷のサブプロセスがクラッシュします。

この大規模な ERD を印刷する方法について何か提案はありますか? それとも別の方法ですか?テーブル名は自明ではないように見えるので、800 以上のテーブルを超えることはできません (正直なところ、あまり望んでいません)。必要なものやその一部を見逃さないことを願っています。

実際にスクリプトやコードを書く前に、どのように進めればよいかアドバイスやアイデアをいただければ幸いです。

データベースは CentOS の mySQL 上にあり、一部のテーブルは InnoDB で、一部は MyISAM です。多くのテーブルに外部キーがあるようです。

ありがとう!

0 投票する
2 に答える
4258 参照

entity-relationship - 単純な ascii 構文に基づく自動エンティティ関係図ジェネレーターはありますか?

単純な ascii 構文に基づいてエンティティ関係図を生成するツールを探しています。

構文は次のようになります

。thing1 <-> thing2
thing3 <->> thing4
thing5 <<-> thing2
thing1 <<->> thing5

<

-> は 1 対 1
<->> は 1 対多
<<- >>は多

対多または類似のものです。

この種のツールがあるはずです。この機能を提供する Web サイトが少なくともあったと思いますが、リンクを失いました。

Graphviz の代替アプローチについて:

誰かがすぐに試してみたい場合は、サンプル ファイル dw.dot を次に示し

ます

ノード[形状=ボックス];


親 -- 子。 Windows では、次の方法で dw.png グラフィック ファイルを取得します:
neato.exe -Tpng dw.dot -o dw.png





0 投票する
2 に答える
80 参照

sql - CakePHP で Message blongsTo Attachment のような「意味的に逆の」関連付けを使用しても問題ありませんか?

次の部分 ER 図があるとします。

メッセージ、提出物、添付ファイル、課題、レクチャーの 5 つのエンティティを含む ER 図

attachmentsこのテーブルは、メッセージ、提出物、課題、講義の添付ファイルに後で使用されることに注意してください。

attachments問題は、とmessages、 、の間の 3 つの 1 対 1 の関係submissionsにありassignmentsます。CakePHP の規約によると、Message belongsTo Attachment(and Attachment hasOne Message)Messageには外部キーが含まれているためです (同じことが他の 2 つの関係にも当てはまります)。もちろん、それを言う方が理にかなっていますMessage hasOne Attachment(そしてそれAttachment belongsTo Message)。messagesandしかない場合は、外部キーを に移動することで、関係を「適切に方向付けるattachments」のは簡単です。attachments

しかし、ここでも問題は、messagessubmissionsassignments、およびが同じテーブルlecturesと関係を持っていることです。「意味的に正しい」関係attachmentsを得る 1 つの方法は、 、、、およびの 4 つの異なるモデルを持つことです。AttachmentMessageAttachmentSubmissionAttachmentAssignmentAttachmentLectureAttachment

特定のメッセージ、送信、または割り当ての添付ファイルを取得することにのみ関心があると仮定すると、これらの意味的に逆の関連付けを使用しても問題ないでしょうか、それとも上記のように 4 つの異なるモデルに分けて適切に方向付ける必要がありますか?Attachment

0 投票する
4 に答える
1256 参照

sql - データベース設計の助けが必要

米国大統領とその任期に関する詳細を格納するデータベースを設計します。また、生年月日と出生地、性別、所属政党の詳細を記録します。大統領の前任者と後継者を特定できるように、大統領の順序を記録する必要があります。Grover Cleveland は連続して 2 期を務めたこと、および政治的所属が変更される可能性があることを忘れないでください。

これは私がこれまでに行ったことであり、これを改善できるかどうかを教えてください。また、この「大統領の前任者と後継者を特定できる」ことをどのように行うことができますか?これは再帰的な関係を使用して行われ、どのように実行しますか?

0 投票する
5 に答える
1028 参照

sql - 必要なデータベース設計ガイダンス

非常勤の漫画家でもある酪農家は、数頭の牛の群れを飼っています。彼は各牛を特定の群れに割り当てました。各群れで、農家は彼のお気に入りの牛を1頭飼っています。多くの場合、その牛は漫画で取り上げられています。各群れのいくつかの不満、主に漫画に登場すべきだと感じている人々は、彼らが軽蔑的に神聖な牛と呼んでいる好きな牛の農民の選択に同意しません。その結果、各群れは現在、群れのリーダーを選出しました。

これは私がテーブルがどのように見えるべきだと思うかです。それがもっとうまくいくことができるかどうか私に知らせてもらえますか?これまでのところ、私はお気に入りのテーブルを使用して多対多の作業を行っています。中間体はこれが最善の解決策であり、SQLステートメントは必要ありません。これは設計目的のためだけです。

前もって感謝します

編集された画像@3:01pmESTこれは正しいですか?

cowErd http://img838.imageshack.us/img838/1268/capture3h.png

新しい画像を追加@8:57am2010年7月20日誰かがこのERDを批評することができます Erd2http://img37.imageshack.us/img37/5794/capture3fc.png

新しい画像を追加@12:47pm 7/20/2010異議がない限り、これはマークの説明 マークERDによる最終ドラフトですhttp://img651.imageshack.us/img651/691/capture4b.png

0 投票する
2 に答える
2626 参照

database-design - データベース設計 - ERD。モデリングの質問

本当に問題ではありませんが、ERDをモデル化するための最良の方法を誰かがすぐにアドバイスできることを願っています(私はChen NotationではなくIDEF1XとERWinを使用しています)。

基本的に私は3つのエンティティを持っています

  1. 組織
  2. 受託者

ビジネス ルールでは、受託者は個人または組織のいずれかであると規定されています。

私の質問は、Trustee に対して 2 つの主要な外部キー関係を持つことは正しいでしょうか。1 つは [Organization] > [Trustee] から、もう 1 つは [Person] > [Trustee] からです。トラスティの FK フィールドの 1 つは、トラスティが個人か組織かによって常に NULL になります。

または、個人と組織 (person_organisation) の間にある種の連想テーブルを用意し、person_Organisation > Trustee から PK、FK 関係を作成する方がよいでしょうか。

組織と個人の両方にリンクする必要があるエンティティが他にもある可能性があるため、2 番目のオプションの方が適しているようです。

うまくいけば、それは理にかなっています。

事前に多くの感謝

0 投票する
1 に答える
640 参照

database-design - 基本的なデータベース設計の質問-1つの属性3つのエンティティ

誰かが私が今までに本当に知っておくべきことを明確にできますか?

私が3つのエンティティ組織、ディレクター、および会社の秘書を持っていて、それぞれが属性のプライマリアドレスを持っている場合。

概念的なERDをモデル化する場合、各エンティティに個別に属性「プライマリアドレス」を設定する必要がありますか、それとも4番目のエンティティアドレスをモデル化してプライマリアドレスを追加し、それらすべてにPK> FKを設定する必要がありますか?

それ以来、このリンクを見つけました。これは、リレーショナルデータベースのアドレス情報をモデル化するための良い方法ですか?これは私が知る必要のあるすべてをほぼカバーしています。

0 投票する
2 に答える
3915 参照

mysql - データベース設計の正規化のヘルプが必要(5nf)

このERDを5番目の通常の形式で取得する方法を教えてもらえますか?昨日クラスの課題を行い、実際のクライアントが来て、彼の必要性を説明してくれました。私のグループがこのモデルを思いついたので、さらに一歩進んで、5番目の通常の形式にできるかどうかを確認します。来週は5nfである必要がある別のグループERDを行うので、それをよりよく理解できます。問題は、どこから始めればよいかわからず、本が私に届かないということです。助けてくれませんか。Erdモデルhttp://img534.imageshack.us/img534/2118/capturekk.jpg

新しい情報「偽のクライアントのニーズ」

クライアントには、手袋やパイペットなどの医療品を注文する2つの部門「ラボ1、ラボ2」があります。部門は成長しており、ベンダーが販売している在庫にあるものを追跡したいと考えています。最高の価格とそれがどのコストセンターから来たのか。

彼がアイテムが注文されていることを説明した方法は、個人が彼のところに行き、物資を求め、次にその人がどのラボであるかを人の名前から書き留め、どのコストセンターに請求するかということです。しかし、彼はまた、日付ごとに何が購入され、何が在庫にあり、何を購入する必要があるかを追跡したいと考えています。彼はまた、一部のユーザーが特定のベンダーからの最高の価格ではない可能性のあるアイテムを望んでいる例を示しました。また、追跡したい価格のカタログもメールで受け取ります。

ごちゃごちゃしてしまったことをお詫びしますが、これはすべて記憶からです。

0 投票する
4 に答える
1337 参照

sql - ERD と SQL クエリの支援?

これが正しく行われたかどうか、またはそれらのいくつかを改善する必要があるかどうかを教えてください。連想エンティティがある場合、クエリを理解するのに苦労しています。

ERD

すべての寄付者を一覧表示する

すべての寄付者の姓名をリストする

寄付者番号106番と125番の電話番号をリストアップ

毎年、各寄付者から寄付された金額をリストする

毎年寄付をした寄付者をリストアップする

ジョージア州またはノースカロライナ州に住んでいる寄付者の名前を挙げてください

姓がウィリアムズで、ジョージア州アテネに住んでいる寄付者の名前を挙げてください

助けてくれたすべての人に感謝したいと思います。入力されたすべての回答が解決策を提供したので、全員に緑色のチェックマークを付けたいと思います. 助けていただきありがとうございます。いつか、あなたが将来持つかもしれない質問に貢献できるかもしれません.