Codd規則,又稱Codd定律,是由13條規則組成,用於確定DBMS是否可以被視為關係DBMS(RDBMS)的先決條件。簡單來說,它是用來評估DBMS(資料庫管理系統)是否為關聯式DBMS的標準方法。下面我們就來具體介紹一下Codd的13條規則是什麼,希望對大家有幫助。
什麼是關係DBMS?
關聯式DBMS(RDBMS),即關聯式資料庫管理系統,是專為關聯式資料庫設計的DBMS。它具有基於行的表結構,用於連接相關的資料元素,並包含維護資料安全性,準確性,完整性和一致性的功能。
說明:關聯式資料庫是指使用行和列以結構化格式儲存資料的資料庫,具有關聯式結構;因此每個表中的值彼此相關,表也可能與其他表有關。關係結構使得可以一次跨多個表運行查詢。
Codd的13條規則
Codd的13個規則定義了一個理想的關聯式資料庫,它被用作當今設計關係資料庫系統的指南。下面我們就來看看這13條規則:
1、基礎規則:
要使系統有資格成為RDBMS,該系統必須符合關係、資料庫和管理系統的要求,必須能夠透過關係功能來完全管理資料庫。
2、資訊規則:
資料庫中的所有資訊(可能是使用者資料或元資料)必須以一種邏輯方式來表示(即,作為表中的值),行和列必須嚴格無序。
3、保證存取規則:
保證每個資料元素(值)都可以透過表名,主鍵(行值)和屬性名(列值)的組合進行邏輯存取。
4、空值(NULL值)的系統化處理:
DBMS必須支援空值,允許每個欄位可能為空;以系統方式表示缺失資訊和不適用的信息,並且獨立於資料類型。
5、基於關係模型的動態線上目錄:
資料庫系統必須支援授權使用者透過其常規查詢語言存取的在線,內聯關係目錄。
也就是說,使用者必須能夠使用他們用來存取資料庫資料的相同查詢語言來存取資料庫的結構(目錄)。
6、綜合資料子語言規則:
資料庫系統必須至少支援一種關聯式語言,且具有以下特徵:
1)、具有線性語法
2)、可以互動使用,也可以在應用程式中使用,
#3)、支援資料定義作(包括視圖定義),資料操作(更新和檢索) ,安全性和完整性約束以及事務管理操作(開始,提交和回滾)。
7、視圖更新規則:
可以使用稱為視圖的不同邏輯組合來完成資料表示。理論上可更新的所有視圖也必須由系統更新。
8、關係等級操作(插入,更新與刪除):
每個關係等級都必須有Insert,Delete,Update操作,且系統必須支援一次設定插入,更新和刪除操作符。這意味著可以從由多行和/或多個表構成的資料集中的關聯式資料庫中檢索資料。
此規則指出任何可檢索集都應支援插入,更新和刪除操作,而不是僅支援單一表中的單一行。
9、物理資料獨立性:
物理層級的變更(資料的儲存方式,無論是陣列或鍊錶等)都不得對外部應用程式存取數據的方式產生任何影響,不得要求根據結構更改應用程式。
10、邏輯資料獨立性:
資料庫中的邏輯資料必須獨立於其使用者的視圖(應用程式)。在邏輯層級(表,列,行等)上進行的更改影響不得使用它的應用程式。
範例:如果將表拆分為兩個表,則新視圖應該將結果作為兩個表的連接。
註:這條規則最難滿足,邏輯資料獨立性比物理資料獨立性更難實現。
11、完整性獨立性:
必須定義完整性約束並將其與應用程式分開。必須有可能在適當時更改此類約束,而不會對現有應用程式產生不必要的影響。
12、分發獨立性:
資料庫的各部分,分佈到的各個位置都應該對資料庫的使用者不可見;且無論資料庫在網路中的分佈如何,資料庫都應正常運作。最終用戶應該得到一個儲存在同一個地方的印象。這奠定了分散式資料庫的基礎。
13、非轉換規則:
#如果允許對系統進行低階語言的訪問,則它不應該破壞或繞過高階語言的完整性規則來更改資料。這可以透過某種查找或加密來實現。
以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。
以上是Codd規則是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!