Oracle的五種約束

2022-08-12 01:33:17 字數 1357 閱讀 3211

1.非空(not null)約束:所定義的列不絕對不能為空;

例如:將已經建立好的表book中的bookname欄位修改為不為空:

利用 alter table.......modify .......not null;

alter

table book modify bookname not

null;

2.主鍵(primary key)約束:唯一的標識表中的每一行;

例如:為已經建立好的表book中的bookid欄位新增名稱為「book_pk的主鍵」

利用alter table  ..... add constraint book_pk primary key(字段);

alter

table book add

constraint book_pk primary

key(bookid);

3.唯一(unique)約束:每列字段的值不能相同;

例如:為表usertable中的phone欄位新增唯一約束

利用alter table  ..... add constraint book_pk primary key(字段);

alter

table usertable add

constraint phone_uk unique (phone);

4.外來鍵(foreign key)約束:用來維護從表與主表之間的引用完整性;

例如dept為主表,emp為從表(外來鍵表),emp中的外來鍵列deptno引用dept中的主鍵

alter

table emp add

constraint emp_teptno_fk foreign

key(deptno) references dept(deptno);

級聯刪除:刪除引用表(主表)中的被引用列時,外來鍵表中對應的資料也將被刪除(實現方式如下)

alter

table emp add

constraint emp_teptno_fk foreign

key(deptno) references dept on

delete

cascade;

5.條件(check)約束:表中每行都要滿足該約束條件。

例如:建立已給學生表(student),為年齡列(age)定義乙個disable狀態的check約束(age>0 and age<120)(建表時的部分**如下:)

age int

constraint age_ck check(age>

0and age<

120) disable,

oracle中的五種約束

1.not null 非空 防止null值進入指定的列,在單列基礎上定義,預設情況下,oracle允許在任何列中有null值.2.check 檢查 檢查在約束中指定的條件是否得到了滿足.3.unique 唯一 保證在指定的列中沒有重複值.在該表中每乙個值或者每一組值都將是唯一的.4.primary ...

Oracle的五類約束

1 語法1.1 行級定義 1.2 表級定義 2 not null 只能行級定義.sql create table tn0 a number 4 not null,b varchar2 20 sql create table tn1 a number 4 constraint nn tn1 a not...

資料庫的五種約束

約束 1 非空約束not null 新增或修改記錄時該列的值不允許為空 2 check約束check sal 0 新增或修改記錄時該列的值需要滿足check設定的條件 3 主鍵約束primary key 新增或修改記錄時該列的值不能與其他記錄的該列值重複 4 唯一鍵約束unique 新增或修改記錄時...