在DBMS中,關係上的完整性約束是什麼?
對於任何儲存的資料,如果我們希望保持一致性和正確性,關係型DBMS通常會施加一個或多個數據完整性約束。這些約束限制了可以插入到資料庫中或由資料庫更新建立的資料值。
資料完整性約束
關係資料庫中通常存在不同型別的資料完整性約束,包括以下內容:
必填資料 - 資料庫中的一些列在每一行中都包含一個有效的資料值;不允許包含NULL值。在示例資料庫中,每個訂單都與一個下訂單的客戶相關聯。可以要求DBMS防止此列中出現NULL值。
有效性檢查 - 資料庫中的每一列都有一個域,即該列的合法資料值的集合。DBMS允許防止這些列中出現其他資料值。
實體完整性 - 表的主鍵在每一行中包含一個唯一值,該值與所有其他行中的值不同。重複值是非法的,因為它們不允許資料庫區分一個實體與另一個實體。可以要求DBMS強制執行此唯一值約束。
參照完整性 - 關係資料庫中的外部索引鍵將子表中包含外部索引鍵的每一行連結到父表中包含匹配主鍵值的該行。可以要求DBMS強制執行此外部索引鍵/主鍵約束。
其他資料關係 - 資料庫建模的現實世界情況通常具有其他約束,這些約束控制可能出現在資料庫中的合法資料值。DBMS允許檢查對錶的修改,以確保其值以這種方式受到約束。
業務規則 - 對資料庫的更新受到管理更新所表示的現實世界事務的業務規則的約束。
一致性 - 許多導致對資料庫進行多次更新的現實世界事務。DBMS允許強制執行此類一致性規則或支援實現此類規則的應用程式。
廣告