關係資料庫
外觀
關係資料庫是建立在集合代數基礎上,應用數學方法來處理資料庫中的數據。現實世界中的各種實體以及實體之間的各種聯繫均用關係模型來表示。
關係模型由關係資料結構、關係操作集合、關係完整性約束三部分組成。
關係資料結構
關係模型中數據的邏輯結構是一張二維表。
關係操作
關係模塊中常用的操作包括:
- 數據查詢
- 選擇
- 投影
- 連接
- 並
- 交
- 差
- 除
- 數據操作
- 增加
- 刪除
- 修改
完整性約束
完整性約束包括:
- 實體完整性
- 參照完整性
- 用戶定義完整性
關係數據語言SQL
SQL(Structured Query Language)語言是1974年由Boyce和Chamberlin提出的一種介於關係代數與關係演算之間的結構化查詢語言,是一個通用的、功能極強的關係性資料庫語言。
模式結構
- 外模式
- 模式
- 內模式
表
視圖
索引
全關係系統十二準則
全關係系統應該完全支持關係模型的所有特徵。關係模型的奠基人E.F.Codd具體地給出了全關係系統應遵循的基本準則。
- 準則0
- 一個關係形的關係資料庫系統必須能完全通過它的關係能力來管理資料庫。
- 準則1 信息準則
- 關係資料庫系統的所有信息都應該在邏輯一級上用表中的值這一種方法顯式的表示。
- 準則2 保證訪問準則
- 依靠表名、主碼和列名的組合,保證能以邏輯方式訪問關係資料庫中的每個數據項。
- 準則3 空值的系統化處理
- 全關係的關係資料庫系統支持空值的概念,並用系統化的方法處理空值。
- 準則4 基於關係模型的動態的聯機數據字典
- 資料庫的描述在邏輯級上和普通數據採用同樣的表述方式。
- 準則5 統一的數據子語言
- 一個關係資料庫系統可以具有幾種語言和多種終端訪問方式,但必須有一種語言,它的語句可以表示為嚴格語法規定的字符串,並能全面的支持各種規則。
- 準則6 視圖更新準則
- 所有理論上可更新的視圖也應該允許由系統更新。
- 準則7 高級的插入、修改和刪除操作
- 系統應該對各種操作進行查詢優化。
- 準則8 數據的物理獨立性
- 無論資料庫的數據在存儲表示或存取方法上作任何變化,應用程式和終端活動都保持邏輯上的不變性。
- 準則9 數據邏輯獨立性
- 當對基本關係進行理論上信息不受損害的任何改變時,應用程式和終端活動都保持邏輯上的不變性。
- 準則10 數據完整的獨立性
- 關係資料庫的完整性約束條件必須是用資料庫語言定義並存儲在數據字典中的。
- 準則11 分布獨立性
- 關係資料庫系統在引入分布數據或數據重新分布時保持邏輯不變。
- 準則12 無破壞準則
- 如果一個關係資料庫系統具有一個低級語言,那麼這個低級語言不能違背或繞過完整性準則。