《數據庫原理與設計》全面介紹了數據庫基本原理與設計技術,并以目前流行的SQL Server 2008為平臺介紹了數據庫管理系統的功能和重要技術。全書分為三部分:第一部分是基礎知識部分(1~5章),主要介紹數據庫的一般原理性知識;第二部分是數據庫系統技術部分(6~9章),主要介紹數據庫應用系統的開發步驟和提高數據庫系統性能的技術;第三部分是數據庫技術的應用和發展部分(10~13章),主要介紹數據庫技術的發展新趨勢和新應用!稊祿䦷煸砼c設計》附錄給出了一個“網上服裝銷售系統”的數據庫應用系統設計的案例。
《數據庫原理與設計》為教師將提供配套的實驗指導書,可以作為高等院校數據庫及相關課程的教材,也可供相關技術人員參考。
第一部分 基礎知識
第1章 數據庫系統概論
1.1 基本概念
1.1.1 數據庫管理系統
1.1.2 數據庫系統的組成及特點
1.2 數據管理技術的發展
1.3 數據庫系統的體系結構
1.3.1 數據庫系統的內部體系結構
1.3.2 數據庫系統的應用體系結構
1.4 SQL Server 2008關系數據庫概述
1.5 本書應用實例--網上服裝銷售系統簡介
本章小結
習題1
第2章 數據模型
2.1 數據建模的過程
2.2 概念模型
2.2.1 基本概念
2.2.2 實體-聯系模型
2.2.3 UML
2.3 數據模型的組成要素
2.4 結構化數據模型
2.5 非結構化數據模型
本章小結
習題2
第3章 關系數據庫
3.1 關系數據庫的概念
3.2 關系模型的基礎
3.3 關系代數
3.4 關系代數的應用
本章小結
習題3
第4章 關系數據庫查詢語言SQL
4.1 SQL的基本概念
4.2 數據定義語句
4.3 數據查詢語句
4.3.1 查詢語句的基本結構
4.3.2 SQL中的簡單查詢
4.3.3 多個關系上的查詢
4.3.4 子查詢
4.3.5 集合查詢
4.4 數據操縱語句
4.5 視圖
4.6 嵌入式SQL
4.7 存儲過程與函數
4.7.1 PL/SQL的塊結構和變量常量的定義
4.7.2 控制結構
4.7.3 存儲過程
4.7.4 SQL Server 2008存儲過程
本章小結
習題4
第5章 關系數據庫的設計理論
5.1 函數依賴
5.1.1 函數依賴的定義
5.1.2 候選碼的定義
5.1.3 Armstrong公理
5.1.4 閉包及其計算
5.2 關系模式的規范化
5.2.1 基本概念
5.2.2 第一范式(1NF)
5.2.3 第二范式(2NF)
5.2.4 第三范式(3NF)
5.2.5 BC范式(BCNF)
5.2.6 多值依賴和第四范式
5.3 模式分解
5.3.1 模式分解的定義
5.3.2 無損連接性與函數依賴保持性
5.3.3 模式分解的算法
本章小結
習題5
第二部分 數據庫系統技術
第6章 數據庫設計
6.1 軟件開發過程簡介
6.2 數據庫設計
6.2.1 數據庫設計的特點
6.2.2 數據庫設計的基本步驟
6.3 需求分析
6.3.1 需求分析的任務和方法
6.3.2 數據流圖
6.3.3 數據字典
6.4 概念結構設計
6.4.1 概念結構設計的方法與步驟
6.4.2 局部E-R模型設計
6.4.3 全局E-R模型設計
6.4.4 UML模型的設計
6.5 邏輯結構設計
6.5.1 邏輯結構設計的方法和步驟
6.5.2 E-R模型向關系模型的轉換
6.5.3 關系模型的優化
6.5.4 用戶子模式的設計
6.6 數據庫的物理設計
6.6.1 物理設計的內容與方法
6.6.2 存取方法的選擇與存儲結構的確定
6.6.3 物理設計性能的評價
6.7 數據庫的實施和維護
6.8 自動數據庫設計工具介紹
本章小結
習題6
第7章 關系數據庫系統及其查詢優化
7.1 關系數據庫系統
7.1.1 關系數據庫系統的定義與分類
7.1.2 全關系系統的基本準則
7.1.3 關系數據庫管理系統
7.2 關系數據庫的查詢優化
7.2.1 概述
7.2.2 關系代數表達式的變換
7.2.3 查詢優化的一般準則
7.2.4 查詢優化的構建和算法
7.2.5 優化器的處理過程
7.2.6 物理優化
本章小結
習題7
第8章 數據庫管理
8.1 事務處理
8.1.1 事務的狀態與特性
8.1.2 事務的并發與可串行化
8.1.3 SQL中的事務處理模型
8.2 事務的并發控制
8.2.1 封鎖與封鎖協議
8.2.2 活鎖與死鎖
8.2.3 兩階段鎖
8.2.4 多粒度鎖
8.2.5 基于時間戳的協議
8.2.6 SQL Server 2008的并發控制
8.3 數據庫的備份與恢復
8.3.1 數據庫故障與恢復的基本概念
8.3.2 數據庫恢復的技術
8.3.3 數據庫恢復的策略
8.3.4 數據庫的備份策略
8.3.5 SQL Server 2008的備份與恢復技術
本章小結
習題8
第9章 數據庫的完整性和安全性
9.1 數據庫的完整性控制
9.2 斷言
9.3 觸發器
9.4 數據庫的安全性控制
9.5 數據庫安全性的控制策略
9.6 角色與權限
9.7 SQL Server 2008的安全機制
本章小結
習題9
第三部分 數據庫技術的應用與發展
第10章 數據庫技術的應用
10.1 數據倉庫
10.1.1 數據倉庫概述
10.1.2 數據倉庫的體系結構
10.1.3 數據倉庫的數據存儲與處理
10.1.4 數據倉庫的開發步驟
10.2 聯機分析處理
10.2.1 聯機分析處理概述
10.2.2 聯機分析處理的實現方法
10.2.3 聯機分析處理的實施
10.2.4 聯機分析處理的新發展
10.3 數據挖掘
10.3.1 數據挖掘概述
10.3.2 關聯規則
10.3.3 數據分類
10.3.4 數據聚類
10.4 決策支持系統
10.4.1 傳統決策支持系統
10.4.2 基于數據倉庫、OLAP和數據挖掘的新決策支持系統
10.4.3 傳統決策支持系統與新的決策支持系統的比較
10.4.4 綜合決策支持系統
10.5 信息檢索系統
10.6 SQL Server 2008聯機分析服務
10.6.2 OLAP模型設計和應用開發
10.6.3 多維數據庫設計
本章小結
習題10
第11章 XML與關系數據庫
11.1 XML的基礎知識
11.1.1 XML簡介
11.1.2 XML應用程序接口
11.2 XML與關系數據庫
11.3 SQL Server 2008對XML的支持
本章小結
習題
第12章 對象-關系數據庫
12.1 面向對象的基本概念
12.1.1 類
12.1.2 對象
12.1.3 繼承
12.1.4 多重繼承
12.1.5 對象標識
12.1.6 對象包含
12.2 面向對象語言
12.3 對象關系模型
12.3.1 嵌套關系
12.3.2 復雜類型
12.3.3 引用類型
12.3.4 繼承類型
12.4 面向對象設計和關系設計
12.4.1 從面向對象屬性到關系屬性
12.4.2 面向對象中聯系的標識
12.4.3 關系模型與對象關系模型的區別
12.5 與復雜類型有關的查詢
本章小結
習題
第13章 數據庫發展趨勢
13.1 數據庫技術的發展趨勢
13.1.1 數據庫技術的發展趨勢
13.1.2 數據庫技術面臨的挑戰
13.2 多種主流數據庫系統簡介
13.2.1 分布式數據庫
13.2.2 空間數據庫
13.2.3 主存數據庫
13.2.4 多媒體數據庫
13.3 云存儲技術及云數據庫
本章小結
習題13
附錄A 數據庫發展趨勢
A.1 需求分析
A.2 概念結構設計
A.3 邏輯結構設計
A.4 物理設計與實施
A.5 數據庫運行與維護
A.5 系統中與數據庫相關的部分代碼
參考文獻
2.3數據模型的組成要素
從邏輯上來說,數據模型面向計算機系統,描述了數據庫中的數據及數據問的整體邏輯結構。數據模型通常由數據結構、數據操作和完整性約束三部分組成,是建立數據庫的基礎。
數據結構是所研究的對象類型的集合,刻畫對象和對象間的聯系,是對數據庫系統靜態特性的描述。如對象的類型、性質、對象之間的參照、所屬關系等。
數據結構是刻畫一個數據模型性質最重要的方面。在數據庫系統中,人們通常按照其數據結構的類型來命名數據模型,如基于層次結構、網狀結構、關系結構、面向對象結構的數據模型分別被命名為層次模型、網狀模型、關系模型、面向對象模型等。
數據操作是指對數據庫中各種對象的值允許執行的操作的集合,包括有關的操作要求,是對數據庫系統動態特性的描述。數據庫主要有查詢和更新(增加、刪除和修改)操作。數據模型中需要定義這些操作的具體含義、操作符號、操作規則和實現操作的語句。
數據模型的完整性約束即數據和數據間應該滿足的條件,是一組完整性規則的集合,用以限定符合數據模型的數據庫狀態以及狀態的變化,以保證數據的正確性、有效性和相容性。
數據模型應該能夠定義必須遵守的基本的完整性約束條件,如關系模型中,任何關系必須滿足實體完整性和參照完整性。
數據模型中還應提供定義完整性約束條件的機制,以反映實際應用中數據或數據之間必須滿足的約束條件。如每款服裝的編號必須唯一,每款服裝的編號不超過10字節,網上商店中每款服裝的剩余數量不能少于10,發貨時間不能早于收到貨款的日期等。數據更新時,數據庫系統將根據事先定義好的各種約束條件進行完整性檢查,不滿足約束條件的數據不能在數據庫中保存。
現有的數據庫系統都是建立在某種數據模型基礎上的,如建立在關系模型基礎上的關系數據庫系統,建立在面向對象模型上的面向對象數據庫系統等。數據模型是數據庫系統的核心和基礎,了解數據模型的基本概念是學習數據庫的基礎。
2.4結構化數據模型
結構化數據模型簡稱數據模型,后面內容中如果沒有特別說明,數據模型就是指結構化數據模型。數據模型是概念模型根據計算機上的某一數據庫管理系統進一步抽象轉換而成的。數據庫領域中常用的數據模型有4種:層次模型、網狀模型、關系模型和面向對象模型。其中層次模型和網狀模型統稱為非關系模型,也稱為格式化數據模型。非關系模型的數據庫系統在20世紀70年代非常流行,到了20世紀80年代,逐漸被關系模型的數據庫系統取代,F在隨著數據庫技術的不斷發展,面向對象模型的數據庫系統也已經嶄露頭角。
……