※ ChatGPTを利用し、要約された質問です(原文:データモデル)
データモデルとは? 図書館の予約システムにおけるデータモデルの作成方法
このQ&Aのポイント
図書館の予約システムにおけるデータモデルは、利用者、予約、図書タイトル、所蔵図書の4つのエンティティで構成されています。
図書タイトルと所蔵図書の関係は「1対多」であり、同じタイトルの図書が複数存在する場合に冗長なデータを避けるため、図書タイトルエンティティを作成します。
図書タイトルエンティティは、物理的な実体を持たず、所蔵図書エンティティの属性を抜き出した抽象的なエンティティです。
図書館の予約システムの一部について、次のようなデータモデルを作成した。
[予約システムのデータモデル]
(利用者)1対多(予約)多対1(図書タイトル)1対多(所属図書)
利用者(利用者ID←主キー、利用者名、住所)
予約(利用者ID←主キー、図書タイトルID、予約日)
図書タイトル(図書タイトルID←主キー、分類コード、署名、著者)
所蔵図書(所蔵図書ID←主キー、図書タイトルID、購入日、累計貸出回数)
図書タイトルと所蔵図書は、「1対多」の関係です。したがって、これを分けずに1つのエンティティで表した場合は、以下のようになります。
図書タイトルID|分類コード|署名|著者|所蔵図書ID|購入日|累計貸出回数
KB0100|K01|工事X|井橋太郎|K0001|2002.12.01|5
CH1000|C02|情報A|市川五郎|C0001|2003.10.01|10
CH1000|C02|情報A|市川五郎|C0002|2003.10.01|13
CH1000~市川五郎のように、これでは、同一タイトルの図書が複数存在し冗長なので、共通する属性を抜き出し、新たな図書タイトルエンティティを作成します。つまり、図書タイトルエンティティは、物理的な実体をもつ所蔵図書エンティティの属性を抜き出した、実体を伴わない抽象的なエンティティとなります。
以上のような解説があるのですが、「物理的な実体をもつ」「もたない」とは、どういう意味なのでしょうか?ここでいう実体とは、何のことなのでしょうか?
お礼
あ、なるほど、わかりました。