oracle約束+check+暴力刪除表,無視外來鍵+檢視使用者建立的表+檢視約束
check
指定一列或一組列必須滿足的條件
條件:
表中每一行都要滿足該約束條件,才會儲存到表中
特點:
1check約束表示式中,必須引用表中一個或者多個列;並且表示式的運算結果是一2個布林值
2一個列中可以定義多個check約束
3同一個列可以同時定義check約束和not null約束
4check既可以第一在列級別中,也可以定義在表級別中
constraint 約束名check(列條件)
列如:下表中age列的資料必須滿足在15到20之間
暴力刪除表,無視外來鍵
drop table 表名 cacasde constraint [purge不可恢復]
刪除表的時候將約束也刪除掉
刪除外來鍵約束;
alter table 子表 drop constraint 外來鍵名
檢視使用者建立的表:
檢視約束
1利用資料字典user_constraints 檢視使用者模式下的表約束資訊;
select owner,constraint_name,constraint_type,table_name from user_constraints;
owner:使用者
constraint_name:約束名
constraint_type:約束型別
table_name:表名
status:約束的狀態,值為enabled或者disabled
deferrable:該約束是否為可延遲,值為deferrable或者undeferrable
deferred:該約束是否立即執行還是延遲執行,值為immediate,deferred
2利用資料字典user_cons_columns 檢視使用者模式下的表約束在哪一個列上(常用)
select owner,constraint_name,table_name,column_name from user_cons_columns;
owner:使用者
constraint_name:約束名
column_name:列名
table_name:表名