データベースを扱う仕事も増えてきてるので、試験の出題傾向も増えてきてます
Top > 情報処理技術者試験の覚書き > 応用情報技術者 > 応用情報の用語集 > 正規化
複雑なテーブルが複数存在する中で、データの重複や不整合を防ぐ為に単純なテーブルに分割すること
第1正規形、第2正規形、第3正規形、ボイスコッド正規形、第4正規形、第5正規形があります。
カラムのデータが繰り返されるような状態
国、県、市番号、市名、住民数、住民税のデータベースの例で表すと、こんなんです。↓
--------------------------------------------------
「KUNI」「KEN_ID」「KEN_NAME」「SI_ID1」「SI_NAME1」「COUNT1」「ZEI1」「SI_ID2」「SI_NAME2」「COUNT2」「ZEI2」「SI_ID3」「SI_NAME3」「COUNT3」「ZEI3」
--------------------------------------------------
繰り返し項目が排除され、主キーで紐づけできている状態
ちょっとすっきり。
--------------------------------------------------
「KUNI」「KEN_ID」「KEN_NAME」
「KUNI」「SI_ID1」「SI_NAME」「COUNT」「ZEI」
--------------------------------------------------
主キーの市番号に含まれる、非キー項目の市名を分けます
--------------------------------------------------
「KUNI」「KEN_ID」「KEN_NAME」
「KUNI」「SI_ID」「COUNT」「ZEI」
「SI_ID」「NAME」
--------------------------------------------------
第1正規型で繰り返しを解消した時の状態から、推移的関数従属を整理します。
推移的関数従属:「KUNI」→「KEN_ID」→「KEN_NAME」のように非キーの項目に項目が紐付いている状態
--------------------------------------------------
「KUNI」「KEN_ID」
「KEN_ID」「KEN_NAME」
--------------------------------------------------