111年警察人員特種考試資訊管理人員三等資料庫應用

二、給予一關聯綱要 (Relation Schema) GROUND (property-id, county-name, lot-id, area, price, tax-rate)此關聯綱要記錄土地資料包括財產編號 (property-id)、鄉鎮名稱 (county-name)、地號 (lot-id)、土地面積 (area)、價格 (price)與稅率 (tax-rate)主鍵為財產編號 (property-id)並給予一組功能依附性(Functional Dependencies){{property-id}→{countyname, lot-id, area, price, tax-rate}{county-name, lot-id}→{property-id, area, price, tax-rate}{county-name}→{tax-rate}{area}→{price}}關聯綱要 GROUND 是否為 2NF如不是會有何問題請將 GROUND 正規化至 2NF然後至 3NF。(25分)

答:

pic01.png

功能相依性F

{property-id}→{countyname, lot-id, area, price, tax-rate}

{county-name, lot-id}→{property-id, area, price, tax-rate}

{county-name}→{tax-rate}

{area}→{price}

()找出候選鍵

[方法一]

1.左有右無:找出最小性

採用左有右無求候選鍵不可或缺部分,左手邊出現 {property-id, county-name, lot-id, area},右手邊出現 {countyname, lot-id, area, price, tax-rate, property-id},此屬性無。

2.使用泛封閉集合推導出所有屬性:找出唯一性

  無法找出候選鍵不可或缺部分,所以無法繼續。

[方法二]

因為 property-id→{countyname, lot-id, area, price, tax-rate}{county-name, lot-id}→{property-id, area, price, tax-rate},由此可知 property-id {county-name, lot-id} 都能推導出所有屬性,所以它們是候選鍵。

()正規化

假設關聯綱要 GROUND R(property-id, county-name, lot-id, area, price, tax-rate)

1.property-id是候選鍵的情況

  (1)第一正規化(First Normal Form, 1NF)

紀錄中的每個欄位值皆為基元值 (Atomic value)。即不存在複合屬性 (composite attributes)多值屬性 (multi-valued attributes)。所以 R 符合 1NF

  (2)第二正規化(Second Normal Form, 2NF)

  一關聯為 2NF,若且唯若此關聯屬於 1NF,而且關聯中所有非鍵屬性 (non-key attributes) 皆完全功能相依 (total functional dependent) 於主鍵。即不存在部分功能相依 (partial functional dependent) 於主鍵的屬性。所以 R 符合 2NF

  (3)第三正規化(Third Normal Form, 3NF)

  一關聯為 3NF,若且唯若此關聯屬於 2NF,而且關聯中所有屬性皆非遞移相依 (non-transitive dependent) 於主鍵。即不存在遞移相依於主鍵的屬性。因為 property-id→countyname countyname→tax-rate,所以 tax-rate 遞移相依於 property-idR 拆解如下:

  R1(property-id, county-name, lot-id, area, price)

主鍵 property-id,外鍵為 county-name→R2.county-name

  R2(county-name, tax-rate)主鍵 county-name,沒有外鍵

  因為 property-id→area area→price,所以 price 遞移相依於 property-idR1 拆解如下:

  R11(property-id, county-name, lot-id, area)

主鍵 property-id,外鍵為 county-name→R2.county-namearea→R12.price

  R12(area, price)主鍵 area,沒有外鍵

  (4)正規化處理的結果:

  R11(property-id, county-name, lot-id, area)

主鍵 property-id,外鍵為 county-name→R2.county-namearea→R12.price

  R12(area, price)主鍵 area,沒有外鍵

  R2(county-name, tax-rate)主鍵 county-name,沒有外鍵

2.{county-name, lot-id}是候選鍵的情況:

  (1)第一正規化(First Normal Form, 1NF)

紀錄中的每個欄位值皆為基元值 (Atomic value)。即不存在複合屬性 (composite attributes)多值屬性 (multi-valued attributes)。所以 R 符合 1NF

  (2)第二正規化(Second Normal Form, 2NF)

  一關聯為 2NF,若且唯若此關聯屬於 1NF,而且關聯中所有非鍵屬性 (non-key attributes) 皆完全功能相依 (total functional dependent) 於主鍵。即不存在部分功能相依 (partial functional dependent) 於主鍵的屬性。在 R 中,因為 county-name→tax-rate,有部分功能相依,拆解如下:

    R1(property-id, county-name, lot-id, area, price)

    主鍵 {county-name, lot-id},外鍵為 county-name→R2.county-name

    R2(county-name, tax-rate)主鍵 county-name,沒有外鍵。

  (3)第三正規化(Third Normal Form, 3NF)

  一關聯為 3NF,若且唯若此關聯屬於 2NF,而且關聯中所有屬性皆非遞移相依 (non-transitive dependent) 於主鍵。即不存在遞移相依於主鍵的屬性。    因為 {county-name, lot-id}→area area→price,所以 price 遞移相依於 {county-name, lot-id}R1 拆解如下:

    R11(property-id, county-name, lot-id, area)

    主鍵 {county-name, lot-id},外鍵為 county-name→R2.county-namearea→R12.area

    R12(area, price)主鍵 area,沒有外鍵

  (4)正規化處理的結果:

    R11(property-id, county-name, lot-id, area)

    主鍵 {county-name, lot-id},外鍵為 county-name→R2.county-namearea→R12.area

    R12(area, price)主鍵 area,沒有外鍵

    R2(county-name, tax-rate)主鍵 county-name,沒有外鍵。

arrow
arrow
    文章標籤
    資料庫應用
    全站熱搜
    創作者介紹
    創作者 jacksaleok 的頭像
    jacksaleok

    國考資訊處理工作室(高考二級資訊處理/高考三級資訊處理/調查局三等/關務人員三等/地方特考三等)

    jacksaleok 發表在 痞客邦 留言(0) 人氣()