三好先生テキスト2023年版 P.276

LNRACさん  
(No.1)
よく分からなくなってしまったので、どなたか教えて下さるとありがたいです。
三好先生テキスト2023年版 P.276に、こういうERDとRSがあります。

■ERD
受    注  →  出    荷
↓            ↓
受注明細  -  出荷明細

■RS
出荷 (出荷番号(PK), 受注番号(FK))
出荷明細 (出荷番号(PK), 出荷明細番号(PK), 受注番号(FK), 受注明細番号(FK))

ここでインスタンスについて、

受注
0001, …
0002, …

受注明細
0001, 01, …
0001, 02, …
0002, 01, …
0002, 02, …

出荷
1001,0001

出荷明細
1001, 01, 0001, 01
1001, 02, 0002, 01 … ☆ 受注番号に注目

☆のような行を保存できそうに思えるのですが、できるのでしょうか?
出荷→出荷明細の一本のリレーションシップの正体は、
{出荷番号, 受注番号} なのでしょうか?
あるいは出荷番号のみであり、トリガーか何かで☆を保存できなくするのでしょうか?
2023.07.19 18:38
logres_fanさん 
DB ブロンズマイスター
(No.2)
> ☆のような行を保存できそうに思えるのですが、できるのでしょうか?
できると思います。
> 出荷→出荷明細の一本のリレーションシップの正体は、
>{出荷番号, 受注番号} なのでしょうか?
{出荷番号,出荷明細番号}だと思います。
> トリガーか何かで☆を保存できなくするのでしょうか?
不整合なデータ(☆)が保存できるので少しずつ壊れてしまいます。そうならないように、実際は、トリガかメンテナンスのプログラムでチェックするんでしょう。こんな時は、動的参照関係に対応している開発基盤が使えればいいですね。
2023.07.19 20:07
LNRACさん  
(No.3)
logres_fan様

そうですよね、やっぱり無為無策であれば保存できますよね。
で保存されれば不整合が生じて、問題ありますよね。
だから参照制約とかトリガとかAPとかで何とかするんですよねたぶん。

明記に出会ったことが無いので戸惑いました。
ありがとうございました。
2023.07.20 05:22

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。

その他のスレッド


Pagetop