Java, Only Java!

          統計

          留言簿(20)

          積分與排名

          好友空間

          文檔技巧

          閱讀排行榜

          評論排行榜

          《數據庫技術基礎與應用(第2版)》學習筆記——第3章

          第3章 關系模型的基本概念

          3.1 關系的定義與性質

          3.1.1 關系的定義
          域(Domain):是值的集合
          笛卡爾積(Cartesian Product):集合中各元素之間一切可能的匹配組合構成的集合。
          笛卡爾積中包含元組(Tuple)。元組個數稱為笛卡爾積的基數(Cardinality)。元組由元組分量組成,元組分量是元組的值。參與笛卡爾積的域的個數,稱為元數(Arity)或度。
          關系:也稱為關系模式的一個實例。
          域中的任一個元素稱為關系中的一個元組。
          3.1.2 鍵(Key):即關鍵字
          超鍵(Super Key):在一個關系中能夠唯一標識元組的屬性組合
          候選鍵(Candidate Key):不含多余屬性的超鍵
          主鍵(Primary Key):用戶選做元組標識的那個候選鍵
          外鍵(Foreign Key):關系R中某個屬性組合A不是關系R的候選鍵,而是關系S的候選鍵,則稱A為R的外鍵
          3.1.3 關系的性質
          關系中的每個元組分量必須是原子的
          關系中不允許出現相同的元組
          定義一個關系模式時可隨意指定屬性的排列次序
          在一個關系中元組的排列次序可任意交換
          關系模式相對穩定,關系實例則隨時間的推移而不斷地變化

          3.2 關系模型

          3.2.1 從ER圖導出關系模型數據結構
          兩實體集間1:N聯系
          將“1”方關系的“主鍵”納入“N”方關系中作為“外鍵”,同時把聯系的屬性也一起納入“N”方關系中。
          兩實體集間M:N聯系
          將“聯系”單獨建立一個關系,需要把聯系關聯的雙方實體的“主鍵”納入到“聯系”的關系中作為“主鍵”和“外鍵”。
          兩實體集間1:1聯系
          “聯系”不單獨建立關系,將其中一個實體集的主鍵納入另一個實體集作為外鍵。
          “聯系”單獨建立關系,將兩個實體集的主鍵都納入關系中作為主鍵和外鍵。
          同一實體集內各實體間1:N聯系
          在實體集內增加一個屬性,用來表示與當前實體相聯系的另一個實體的“主鍵”
          同一實體集內各實體間M:N聯系
          “聯系”單獨建立關系,將相互聯系的雙方實體的“主鍵”都納入到關系中。
          多個實體集間M:N多元聯系
          “聯系”單獨建立關系,將相互聯系的所有實體的“主鍵”都納入到關系中。
          3.2.2 關系模型的體系結構
          關系概念模式
          由若干個關系模式組成的集合,它描述關系數據庫中全部數據的整體邏輯結構。
          關系外模式
          關系外模式是關系概念模式的一個邏輯子集。描述關系數據庫中數據的局部邏輯結構。
          關系概念模式與關系外模式之間的映射在外模式中描述。
          在關系數據庫中,一個用戶可以使用的全部的“表”和“虛表”構成這個用戶的數據視圖,視圖中所有“表”和“虛表”的框架組成數據庫的外模式。
          系統把“虛表”的定義存儲在數據字典中。
          關系內模式
          關系存儲時的基本組織方式是文件,關系中的元組對應文件中的記錄。
          關系概念模式和關系內模式之間的映射在內模式中描述。
          3.2.3 關系模型的三類完整性約束規則
          實體完整性約束規則
          關系中不允許出現相同的元組,在組成主鍵的屬性上也不允許取空值
          參照完整性約束規則
          不能引用不存在的實體,又稱為引用完整性
          用戶定義的完整性約束規則
          針對某些具體數據的約束規則,主要是保證數據的語義要求。
          3.2.4 關系模型的形式定義
          關系模型是一種結構數據模型,是能夠在計算機中真正實現的模型,有著嚴格的形式化定義。
          關系模型的組成
          數據結構:數據的表達方式和數據聯系的實現方式。
          數據操作:檢索和更新(即插入、刪除和修改)兩大類操作。
          數據完整性約束:給出數據及聯系的制約與依賴規則,保證數據的正確性。

          3.3 關系數據語言

          3.3.1 關系數據描述語言(DDL)
          問答式DDL
          通過人機對話建立關系模式,簡單易學,但是人工干預多,速度慢。
          語言描述式DDL
          使用源語句描述定義關系模式的內容,再編譯成目標模式。
          3.3.2 關系數據操縱語言(DML)
          DML的特點
          操作對象與操作結果都是關系
          語言完備性及非過程性
          語言所提供的運算(或操作)可以存取數據庫中的任何數據及數據間的聯系信息。
          關系代數和關系演算都是衡量關系數據庫語言完備性的標準
          用戶在編寫應用程序時,只需要提出“做什么”,不需要說明“怎么做”,就稱這種語言的非過程性級別高。
          語言建立在嚴密的數學理論基礎上
          用關系代數運算表達查詢,查詢以集合理論為基礎
          用關系演算公式表達查詢,查詢以數理邏輯謂詞演算為基礎
          3.3.3 標準數據庫語言SQL
          SQL介紹
          SQL是一種介于關系代數與關系演算之間的語言
          SQL是已經被認可的標準數據庫語言

          備注:

          《數據庫技術基礎與應用(第2版)》的豆瓣鏈接https://book.douban.com/subject/2995584/

          posted on 2017-12-25 15:07 zYx.Tom 閱讀(212) 評論(0)  編輯  收藏 所屬分類: 5.數據世界

          主站蜘蛛池模板: 奎屯市| 麻江县| 靖西县| 汤阴县| 泗水县| 象山县| 台东县| 全南县| 岚皋县| 苗栗市| 铁岭县| 长垣县| 资兴市| 江口县| 景洪市| 雷山县| 甘洛县| 佛冈县| 太湖县| 化州市| 南陵县| 宜黄县| 东乡县| 杭州市| 馆陶县| 阿坝| 新蔡县| 宿迁市| 华亭县| 湖南省| 河源市| 沧源| 信丰县| 墨竹工卡县| 荥阳市| 宾川县| 甘谷县| 平潭县| 武鸣县| 泸州市| 古浪县|