1. 程式人生 > 其它 >【軟考-中級-資料庫相關知識】02、關係資料庫

【軟考-中級-資料庫相關知識】02、關係資料庫

關係資料庫

  • 概念
    • 在關係資料模型中,把記錄型別稱為關係模式
    • 閉包:鍵的閉包應當包含R的所有屬性
    • 完整性約束
      • 實體完整性
      • 參照完整性
      • 使用者自定義的完整性:可以用觸發器實現
      • 注意:檢視不能實現完整性約束
    • 主鍵
      • 全碼:全部屬性組為關係模式的候選鍵
      • 候選碼:排除沒有出度,從剩餘的看能不能推出來全部,能則為候選碼
    • 斷言是為了保證資料的完整性
    • 觸發器
      • SQL語句的集合
      • 不能傳遞引數
      • 通過事件來觸發,可以實現比check更復雜的約束
      • 舉例:
        • 級別增加一級,工資增加500元
  • 關係代數運算
    • 不自動去重複列,需要進行選擇
    • 集合運算子
      • 笛卡爾積:
        • 相乘,共有m+n列
      • 自然連線
        • 去除重複列
    • 比較運算子
    • 邏輯運算子
    • 關係運算符(連線、除)
      • 差的選擇等於選擇的差
      • 除:只除有的
    • 表連線
      • 左外連線:有共同欄位找懸浮資料
      • 帶條件的自然連線與笛卡爾積後選擇條件等價
      • 沒有公共屬性的自然連線會轉換為笛卡爾積操作
      • 分類
        • 左外連線:捨棄右邊沒有的
        • 右外連線:捨棄右邊沒有的
        • 完全外連線:所有捨棄的都放入
      • 查詢優化
        • 按條件選擇後,自然連線,再按條件查詢
  • 規範化
    • 關係定義
      • 關係不可以巢狀定義,其屬性必須是原子的、不可再分的
      • 關係模式:表的列
      • 函式依賴:列之間的關係
    • 正規化
      • 1NF:屬性不可分,存在部分函式依賴(學號,課程號)
      • 2NF:消除部分函式依賴
      • 3NF:消除非主屬性對碼的傳遞函式依賴【主屬性存在部分函式依賴】
      • BCNF:消除主屬性的部分函式依賴
      • 4NF:多值屬性構成的(如工號、手機號)
    • 最小函式依賴集
      • 不含傳遞依賴
      • 不含部分依賴
      • 每個函式依賴的右部都是單屬性!
    • 函式依賴集等價
      • 蘊含的屬性間的依賴資訊等價
      • 即函式依賴的閉包相等
      • A+=B+
    • E-R圖
      • 雙線橢圓表示多值屬性
    • 依賴關係
      • 部分函式依賴:Y不完全依賴於X
      • 傳遞函式依賴:(學號,學院,學院領導)
  • Armstrong公理
    • 傳遞率
    • 合併規則
    • 偽傳遞率:間接推導
    • 增廣率
  • 模式分解
    • 型別
      • 無損連線分解:
      • 保持原有的分解:看元素是否全
    • 表示
      • (候選碼)
        +
  • 查詢優化
    • 原則:提早執行選擇
    • 其他:投影和其他運算同時進行,避免重複掃描關係
    • 索引改進
      • 當查詢是效能瓶頸時,在關係上建立索引
      • 當更新是效能瓶頸時,考慮刪除某些索引(索引會引起更新操作的效率降低)
      • 有利於大多數資料查詢的索引設定為聚簇索引
    • 效能優化
      • 減少多表查詢
      • 減少物化檢視
      • 使用帶UNION的條件子句等價替換OR子句