E ⽒名 ⾚神 ⽩神 黒神 部署コード D D D 部署名 開発 開発 営業 社員 切り出す 社員番号 ★ E E E ⽒名 ⾚神 ⽩神 黒神 部署コード ◆ D D D 部署 部署コード ★ D D 部署名 開発 営業 ① 候補キー {社員番号}。⽒名も部署コードも社員番号だけで決まるので、単⼀キー。 ② 違反している従属 部署コード → 部署名。社員番号 → 部署コード → 部署名 という連鎖。 ③ 判定 第2正規形。単⼀キーなので 2NF は⾃動で成⽴し、3NF で⽌まっている。 直ったこと 「開発」が2⾏に書かれていたのが、部署表の1⾏になった。部署名の変更は1か所で済む。 単一キーのときに探すのは推移的従属だけ 今ココ 判定演習 5/10
R 商品コード P P P 数量 商品名 りんご みかん りんご 単価 受注明細 切り出す 受注番号 ★ 商品コード ★◆ R R R P P P 数量 商品 商品コード ★ P P 商品名 りんご みかん 単価 ① 候補キー {受注番号, 商品コード}。数量は両⽅そろって初めて決まる。 ② 違反している従属 商品コード → 商品名‧単価。キーの⼀部だけで決まる部分関数従属。 ③ 判定 第1正規形。複合キーができた時点で 1NF、部分従属があるので 2NF 未満。 直ったこと 「りんご‧100」が2⾏に書かれていたのが、商品表の1⾏になった。単価改定は1か所で済む。 商品コードは主キーの一部と外部キーを兼ねる 今ココ 判定演習 7/10