資料庫完整性定義與檢查

2021-09-23 07:41:36 字數 1715 閱讀 1173

在列級定義實體完整性:

在表級定義實體完整性:

create table sc(sno char(9),cno char(4),grade smallint,primary key(sno,cno),foreign key(sno) references student(sno),foreign key (cno) references course(cno));

建立表後新增完整性約束

alter table book add constraint pkey primary key(bno);

檢視約束

select * from information_schema.table_constraintswhere table_name=『book』;

完整性約束驗證:

insert into book values(『123456789』,『booka』,10);

insert into book values(『123456789』,『bookb』,20);

刪除完整性約束

alter table book drop primary key;

建立表時定義參照完整性:

create table borrow(bno char(9),sno char(9),foreign key(bno) references book(bno));

建立表後定義參照完整性:

刪除參照完整性:

alter table borrow drop foreign key fkey;

新增非空約束

alter table book modify bno char(9) not null;

新增unique約束

刪除unique約束

新增default約束

alter table book alter column bno set default 『000000000』;

刪除default約束

alter table book alter column bno drop default;

增加check約束

alter table book add constraint chk check(bprice<>0);

資料庫完整性檢查

為了主動發現資料庫側頁損壞,保證資料庫邏輯和物理完整性,計畫每週六上午 6點,針對生產主庫上的所有系統和使用者資料庫執行 dbcc checkdb 將結果記錄到表中。以下為理論依據 sql server 資料庫可以檢測出頁損壞,此時,具體的表現形式可能為下述三種錯誤的一種 sql server 發現...

完整性檢查

當我們想窮舉乙個型別的所有可能值時,當可能值過多,不免會遺漏過多的東西。通常我們窮舉乙個值的所有可能,我們會採用switch或者if else,當然,這是可行的,下面看乙個if else例子 function test p 1 2 else if p 2 當p的型別為更多的聯合型別的時候,我們會寫更...

資料庫完整性

完整性約束條件 實體完整性給出了主鍵的取值的最低約束條件 規則是 主鍵的各個屬性都不能為空。參照完整性給出了在關係之間建立正確的聯絡的約束條件 規則是 外來鍵或者取空值 此時要求外來鍵的各個屬性均為空值 或者等於被參照關係中的主鍵的某個值。使用者自定義完整性 關係數控應用系統中的關係往往還應該滿足一...