こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

データベース 親表

こんにちは。
データベースにおいてごく初歩的な質問をさせていただきます。
ごく一般的な例として、
顧客情報を管理する 「 customer」 テーブルと
受注情報を管理する 「 order 」 テーブルがある場合
「 order 」 テーブルが 顧客情報を参照するので
「 customer 」 テーブルのことを親表と呼ぶのでしょうか?
親表とはマスターテーブルと同じ意味なのでしょうか?

ご存知の型、教えていただけないでしょうか?
よろしくお願いします。

投稿日時 - 2012-10-18 18:55:02

QNo.7754744

暇なときに回答ください

質問者が選んだベストアンサー

ANo.1です.

私自身あまり親表という表現を使わないですが,マスターテーブルやトランザンクションテーブルも厳密な定義があるわけではないようです.SQL文もデータベースによって方言があります.

とは言え,状況から言って,今の場合customerが親表(≒マスターテーブル)で,orderが子表(≒トランザンクションテーブル)でしょう.マスターテーブルはあまり更新されず,トランザンクションテーブルは頻繁に更新されるという特徴はあるでしょう.

子表は親表を参照します.そのための子表の参照列を外部キーといいます.

親表と子表の間でデータの整合性を保ち,子表に入力される値は必ず親表に存在しなければなりません.

投稿日時 - 2012-10-19 23:24:29

お礼

再び詳しく解説していただきありがとうございます。
貴重な時間をさいての回答、ありがとうございました。

投稿日時 - 2012-10-20 19:46:48

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

普通orderには外部キーとして顧客ID(customerの主キー),受注ID(orderの主キー)をもちますから,orderがcustomerの顧客情報を参照する,というと思います.

customerはマスターテーブルと習慣的に呼ぶようです.親表というのはいろいろな意味に使うような気がします.

customerはある長期間は不変なテーブルです.そういうテーブルをマスターテーブルというとおもいます.会社データベースの社員テーブル,学校データベースの生徒テーブルはそれぞれ社員マスター,生徒マスターと呼びますね.

これに対しorderは頻繁に更新されるので,トランザンクションテーブルと言ったと思います.

トランザンクションテーブルから参照されるのがマスターテーブルということでしょうか.

投稿日時 - 2012-10-18 21:30:34

お礼

さっそく回答していただきありがとうございます。
答えていただけたついてといっては失礼かもしれませんが、
もう少し、解説していただけないでしょうか。
「 親表 」 の定義とはズバリどのようなものなのでしょうか。
回答していただけた文中では、いろいろな意味に使われる、
とのことですが、具体的にはどのようなものなのでしょうか。
よければ、教えていただけないでしょうか。
とにかく、貴重な時間をさいての回答、ありがとうございました。

投稿日時 - 2012-10-19 22:46:08

あなたにオススメの質問