關係型資料庫和關係型資料庫管理系統
什麼是關係型資料庫?
關係資料庫,是建立在關係模型基礎上的資料庫,藉助於集合代數等數學概念和方法來處理資料庫中的資料。
關係模型
現實世界中的各種實體以及實體之間的各種聯絡均用關係模型來表示。關係模型由關係資料結構、關係操作集合、關係完整性約束三部分組成。
關係模型就是指二維表格模型,因而一個關係型資料庫就是由二維表及其之間聯絡組成的一個數據組織。
實體關係模型(Entity-Relationship Model)簡稱E-R Model是一套資料庫設計工具,運用真實世界事物與關係的概念,來解釋資料庫中的抽象的資料架構。實體關係模型利用圖形 的方式(實體-關係圖Entity-Relationship Diagram)來表示資料庫的概念設計,有助於設計過程中的構思及溝通討論。
關係操作
選擇、投影、連線、並、交、差、除、資料操作、增加、刪除、修改、查詢
完整性約束
關係完整性是為了保證資料庫中資料的正確性和相容性,對關係模型提出的某種約束條件或規則。完整性約束包括域完整性、實體完整性、參照完整性、使用者定義完整性。其中域完整性、實體完整性和參照完整性是關係模型必須滿足的完整性約束條件。
(1)域完整性約束(Domain Integrity Constrains):
域完整性是保證資料庫欄位取值的合理性。是最簡單、最基本的約束。
屬性值應是域中的值。一個屬效能否為NULL是由語義決定的,也是域完整性約束的主要內容。
在當今關係DBMS中,一般都有完整性約束檢查功能。包括檢查check、預設值default、不為空not null、外來鍵foreign key等約束。
(2)實體完整性約束(Entity Integrity Constrains):
實體完整性是指關係的主關鍵字不能重複也不能取“空值”。
在關係模式中,以主關鍵字作為唯一性標識,而主關鍵字中的屬性(稱為主屬性)不能取空值,否則,表明關係模式中存在著不可標識的實體(因空值是“不確定\"的),這與現實世界的實際情況相矛盾,這樣的實體就不是一個完整實體。按實體完整性規則要求,主屬性不得取空值,如主關鍵字是多個屬性的組合,則所有主屬性均不得取空值。
(3)參照完整性約束(Referential Integrity Constrains):
參照完整性是定義建立關係之間聯絡的主關鍵字與外部關鍵字引用的約束條件。關係資料庫中通常都包含多個存在相互聯絡的關係,關係與關係之間的聯絡是通過公共屬性來實現的。所謂公共屬性,它是一個關係R(稱為被參照關係或目標關係)的主關鍵字,同時又是另一關係K(稱為參照關係)的外部關鍵字。如果參照關係K中外部關鍵字的取值,要麼與被參照關係R中某元組主關鍵字的值相同,要麼取空值,那麼,在這兩個關係間建立關聯的主關鍵字和外部關鍵字引用,符合參照完整性規則要求。如果參照關係K的外部關鍵字也是其主關鍵字,根據實體完整性要求,主關鍵字不得取空值,因此,參照關係K外部關鍵字的取值實際上只能取相應被參照關係R中已經存在的主關鍵字值。
(4)使用者定義完整性(User Defined Integrity Constrains):
使用者完整性是根據應用環境的要求和實際的需要,對某一具體應用所涉及的資料提出約束性條件。這一約束機制一般不應由應用程式提供,而應由關係模型提供定義並檢驗,使用者定義完整性主要包括欄位有效性約束和記錄有效性。SQL
標準資料查詢語言SQL就是基於關係資料庫的語言,它是一種介於關係代數與關係演算之間的結構化查詢語言。這種語言執行對資料庫中資料的檢索和操作。
模式結構
(1)表:資料庫表,行和列的形式組織起來的資料集合。在關係型資料庫當中一個表就是一個關係,一個數據庫包括一個或多個表。
(2)檢視:
檢視是從一個或多個表(或檢視)匯出的表。檢視與表不同,是一個虛表,即檢視所對應的資料不進行實際儲存,資料庫中只儲存檢視的定義,對檢視的資料進行操作時,系統根據檢視的定義去操作與檢視相關聯的基本表。
(3)索引:
資料庫索引是對資料庫表中一列或多列的值進行排序的一種結構,使用索引可快速訪問資料庫表中特定的資訊。
什麼是關係型資料庫管理系統?
包括相互聯絡的資料集合(資料庫)和存取這些資料的一套程式(資料庫管理系統軟體)。關係資料庫管理系統就是管理關係資料庫,並將資料組織為相關的行和列的形同。例如mySQL、SQL Server都是關係資料庫管理系統(RDBMS,Relational Database Management System)。
專門運算包括選擇運算、投影運算和連線運算。