読者です 読者をやめる 読者になる 読者になる

気ままなタンス*プログラミングなどのノートブック

プログラミングやRPGツクール、DTM、VOCALOIDについてのんびり書きます。

【DBメモ】更新時異状の状況説明

DBメモ

DBの本にわかりやすい解説が載っていたのでメモ。

どういうとき、どんな場合に、何の情報が、どうなるので、 (登録できない)(不整合が生じる)という形で組み上げていく。

新規登録

主キー{A, B}の組み合わせが未登録の場合で説明

① (主キー(A及びA, B)が未定の場合の状況を具体的に説明した文言)の

② (BとCの組み合わせあるいはBに関する情報)は

③ 主キーがNULLとなるので

④ 登録できない

  • 具体例
    • 申込時、旅券を取得していない顧客の情報は、主キーがNULLとなるで登録できない
    • 主キー制約のため、年月度の値が決まらないと、氏名や住所などの顧客情報を登録できない
    • 車名や新車価格など車の情報を、該当する具体的な査定車が現れるまで登録できない
    • 診断しても指導を行わないと情報を登録できない

主キー{A, B}の組み合わせが既に登録されている場合で説明

① (Aが登録されている状況の一例)時の登録で

② (BとCの組み合わせ、あるいはBに関する情報)が

③ 冗長になる または 重複して登録するため不整合が生じる

  • 具体例
    • 旅券更新又は再発行後の登録で、{氏名,住所,生年月日,性別}が冗長になる
    • 氏名や住所などの顧客情報が冗長であり、重複して登録するため不整合が生じる可能性がある
    • 同じ車種の査定車が複数ある場合に、車情報を重複して登録しなければならない
    • 伝票番号に従属する属性"販売店コード"などが冗長なデータとなる

更新

① (Aが異なりBが同じである複数の行の一例を示す)で

② (BとCの組み合わせ、あるいはBに関する情報が)冗長であるため

③ これらを同時に修正しないと整合性が失われる

  • 具体例
    • 属性"予約枠ID"と"予定日時"、"メニューID"の組み合わせを同時に更新しないと不整合が生じる

削除

① (BとCの組み合わせ、あるいはBに関する情報)が

② 特定の1行にしか存在しない場合において

③ (主キーになるAやA, B)を削除すると、1が(永久に)失われる