什麼是資料完整性約束?
資料完整性:儲存在資料庫中的所有資料值均正確的狀態。它是應防止資料庫中存在不符合語義規定的資料和防止因錯誤資訊的輸入輸出造成無效操作或錯誤資訊而提出的。
資料完整性分為四類:
1. 實體完整性(實體完整性是對關係中的記錄唯一性,也就是主鍵的約束。準確地說,實體完整性是指關係中的主屬性值不能為null且不能有相同值。定義表中的所有行能唯一的標識,一般用主鍵,唯一索引 unique關鍵字,及identity屬性比如說我們的身份證號碼,可以唯一標識乙個人.。)
2. 域完整性(域完整性是對資料表中欄位屬性的約束,通常指資料的有效性,它包括欄位的值域、欄位的型別及字段的有效規則等約束,它是由確定關係結構時所定義的字段的屬性決定的。限制資料型別,預設值,規則,約束,是否可以為空,域完整性可以確保不會輸入無效的值.。)
3. 參照完整性(參照完整性是對關聯式資料庫中建立關聯關係的資料表間資料參照引用的約束,也就是對外來鍵的約束。準確地說,參照完整性是指關係中的外來鍵必須是另乙個關係的主鍵有效值,或者是null。參考完整性維護表間資料的有效性,完整性,通常通過建立外部鍵聯絡另一表的主鍵實現,還可以用觸發器來維護參考完整性)
4. 使用者定義的完整性。
約束是表級的強制規定,有以下五種:not null(非空約束),unique(唯一性約束),primary key(主鍵約束),foreign key(外來鍵約束),check(檢查約束) 。
ps:mysql沒有check (檢查性約束),oracle五種都有
資料庫完整型概念與完整性約束
什麼是資料庫完整性 db integrity 資料庫完整性是指dbms應保證的db的一種特性 在任何情況下的正確性 有效性和一致性 為什麼會引發資料庫完整性的問題呢?資料庫完整性分類 按約束物件分類 按約束狀態分類 關係模型中有完整性要求 完整性約束條件 規則的一般形式 dbms怎樣自動保證完整性呢...
第三章 保證資料完整型
第三章 保證資料完整型 3.1資料完整性概括 1.實體完整性 實體完整性將定義為特定的表的唯一實體。實體完整性強直表的標識列或主鍵的完整性,它可以通過在表中設定主鍵約束 唯一約束或標識列屬性來實現。2.域完整性 域完整性是指給定列的輸入有效性。強制域有效性的方法有 限制型別 通過資料型別 格式 通過...
完整性約束
create table student tb id int notnull 非空約束 資料不允許為空 name varchar 255 null 顯式指定允許為空 新增非空約束 alter table 表名 modify column 屬性名 屬性型別 not null alter table s...