質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
データベース設計

データベース設計はデータベースの論理的や物理的な部分を特定する工程です。

Q&A

3回答

2511閲覧

データベースの概念設計における多重度の書き方

hs_kanda

総合スコア34

データベース設計

データベース設計はデータベースの論理的や物理的な部分を特定する工程です。

0グッド

0クリップ

投稿2018/11/16 07:13

業務管理システムのデータベースの概念設計をしています。

マスタ、テーブル、項目を書き出して多重度を考えています。
表記には矢印、1、nのみを使っています。
ただ、何度書いても「矢印の向きが逆」と指摘されます。

ネットで調べても、具体的なことはまったく書かれていないように見えます。
設計で使われる用語(レコード、フィールド、属性など)の意味にしても、
抽象的だと感じます。

多重度における1、n、矢印の向きのそれぞれの意味に加えて、
多重度を書く上で必要となる考え方を教えていただきたいです。

各マスタ、各テーブルは以下です。
()内は、各マスタ、各テーブルに入っている情報です。

商品M(商品の種類、商品名、商品価格)
商品T(商品の状態、商品履歴)
契約T(契約名、契約開始日、契約終了日、契約担当者名)
顧客T(顧客名、顧客住所、現住所、電話番号、使用商品名)
加盟店M(加盟店名、所在地、取り扱い商品名)
担当者T(役職名、担当者名、所属事業所名)
倉庫T(商品の保管場所、倉庫名、倉庫の貸主名)
入院T(入院期間、入院回数)
解約T(解約商品名、解約期間、解約者名)
運行T(運行日、交通費、運行商品の名称、事業所名)
消毒T(作業名、消毒日時)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

非エンジニアのためのER図入門

膨大な時間をかけて苦労してExcelでER図を作る会社もありますが、見にく過ぎて誰も使ってくれませんから、ツールを使います。ER図をいい感じに作れそうなモデリングツールを探してみた。 個人的な好みはObject Browser ER

もちろん、データベーステーブル設計の基礎の基礎〜エンティティの抽出・定義から正規化まで この程度はしっかり勉強してからER図を作ります。

投稿2018/11/17 00:44

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hs_kanda

2018/11/19 02:09

回答ありがとうございます。 「データベーステーブル設計の基礎の基礎〜エンティティの抽出・定義から正規化まで」は初めて見ました。 現在、エンティティの定義まではやりました。 業務管理システムの作り替えをしているため、 自分でER図を書いて、それを既存のシステムと比較して、 ブラッシュアップしていくということをやろうとしています。 そこで、1、n、矢印の向きを考えているのですが、 そもそも業務管理の知識が不足しているため、行き詰っています。 何か参考になるものがあれば、教えていただけると嬉しいです。
Orlofsky

2018/11/19 02:43

業務管理の知識は現場に教えてもらいましょう。データの発生から終了までどんな伝票・画面や帳票が使われてどうデータベースと結びつくか考えます。現行のやり方で足りない情報がないか、不要になったものは削れないかも考えます。掲示板で質問する場合はどんな業務かできるだけ具体的に明記した方が良いです。 初心者でしたらテーブル設計を支援して貰える熟練者を何ヵ月か雇った方が、短期間で使い物になって耐用年数が長いシステムが作れるでしょう。
hs_kanda

2018/11/19 03:12

初心者です。 --- 既存のシステムは、卸売の業務に使われています。 メーカーや加盟店から借りた商品を顧客に貸すということをしています。 まず、加盟店に商品を提供してもらいます。 次に、顧客に商品を試してもらい、よければ契約します。 契約した商品は、営業担当者が倉庫からトラックで運びます。 使った後の商品は、消毒して倉庫に戻す必要があります。 また、顧客が入院した場合、入院期間中は請求を止めるようにする必要があります。 解約テーブルは契約テーブルに含めようかと思っています。 --- 既存のシステムを自分のパソコン上で動作するように環境を整えて、 ボタンをあちこち押しているのですが、 画面や項目の数が非常に多く、仰るところの「結びつき」がよくわかりません。 システムとデータベースは別ものと仰っているように思いますが、 その辺りはどう考えればいいのでしょうか。
Orlofsky

2018/11/19 03:32

掲示板でどうこうできるレベルではないので熟練者を雇いましょう。 幼稚園児に実弾入りの拳銃を渡すような真似は止めた方がいいです。
guest

0

DB設計って、普通に勉強しようとすると、学校の教科書と同じぐらいの厚さになります。
まず本を買って勉強しましょう。ネットを見るのは、参考程度に!

投稿2018/11/16 12:39

akirafudo6

総合スコア341

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hs_kanda

2018/11/19 02:13

回答ありがとうございます。 現在、以下の本を読んでいます。 ・実践的データモデリング入門 真野正(著) 翔泳社 ・業務モデルとデータモデルの考え方 松本(著) 翔泳社 ・わかりやすいデータベース設計技法 内山、小林(著) ソフト・リサーチ・センター
guest

0

そもそもERで矢印なんて書きます?

多重度については、いったん以下を読んでから、わからないところを再度質問してみてはどうでしょうか。
かなり具体的に書かれていると思います。

若手プログラマー必読!5分で理解できるER図の書き方5ステップ

投稿2018/11/16 11:33

編集2018/11/19 01:00
momon-ga

総合スコア4820

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Orlofsky

2018/11/16 11:49 編集

URLは [対応しているMarkdownの機能](https://teratail.com/help#about-markdown) の[リンク]を使いましょう。事務局にはずっーーーーーと改善をお願いしているのだが、コメントにmarkdownが使えるようになるのは何時の事か?
hs_kanda

2018/11/19 02:16

回答ありがとうございます。 多重度の書き方自体は理解しているつもりですが、 現在扱っている業務管理システムにおける業務知識が不足しているため、 多重度を書く上で具体的に考えるところでつまづいています。
akirafudo6

2018/11/19 03:03

>業務知識が不足しているため  これ重要です。DB設計において、業務知識がないと設計できません。まず業務知識を身につけましょ う。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問