這篇文章主要介紹數據庫中約束的validate和able怎么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
成都創新互聯提供高防服務器、云服務器、香港服務器、四川移動機房托管等
創建唯一性約束,自動創建了和約束名一樣的唯一性索引
創建check約束,不會產生索引
創建外鍵約束,不會產生索引
啟用約束:
enable( validate) :啟用約束,創建索引,對已有及新加入的數據執行約束.
enable novalidate :啟用約束,創建索引,僅對新加入的數據強制執行約束,而不管表中的現有數據.
禁用約束:
disable( novalidate):關閉約束,刪除索引,可以對約束列的數據進行修改等操作.
disable validate :關閉約束,刪除索引,不能對表進行 插入/更新/刪除等操作.
enable\validate用到的地方
1、物化視圖要實現查詢重寫時,則必須保證相關聯表的主外鍵約束的狀態為enable、validate
2、要實現星型轉換時,必須保證fact表即主表字段的外鍵約束的狀態為enable、validate
SQL> alter table SALES disable novalidate constraint SALES_CHANNEL_FK;
Table altered.
SQL> select constraint_name,constraint_type,status,validated from user_constraints where table_name='SALES' and constraint_type='R' and CONSTRAINT_NAME='SALES_CHANNEL_FK';
CONSTRAINT_NAME CONSTRAINT_TYPE STATUS VALIDATED
-------------------- -------------------- ---------- --------------------
SALES_CHANNEL_FK R DISABLED NOT VALIDATED
SQL> alter table SALES disable validate constraint SALES_CHANNEL_FK;
Table altered.
SQL> select constraint_name,constraint_type,status,validated from user_constraints where table_name='SALES' and constraint_type='R' and CONSTRAINT_NAME='SALES_CHANNEL_FK';
CONSTRAINT_NAME CONSTRAINT_TYPE STATUS VALIDATED
-------------------- -------------------- ---------- --------------------
SALES_CHANNEL_FK R DISABLED VALIDATED
SQL> alter table SALES enable novalidate constraint SALES_CHANNEL_FK;
Table altered.
SQL> select constraint_name,constraint_type,status,validated from user_constraints where table_name='SALES' and constraint_type='R' and CONSTRAINT_NAME='SALES_CHANNEL_FK';
CONSTRAINT_NAME CONSTRAINT_TYPE STATUS VALIDATED
-------------------- -------------------- ---------- --------------------
SALES_CHANNEL_FK R ENABLED NOT VALIDATED
SQL> alter table SALES enable validate constraint SALES_CHANNEL_FK;
Table altered.
SQL> select constraint_name,constraint_type,status,validated from user_constraints where table_name='SALES' and constraint_type='R' and CONSTRAINT_NAME='SALES_CHANNEL_FK';
CONSTRAINT_NAME CONSTRAINT_TYPE STATUS VALIDATED
-------------------- -------------------- ---------- --------------------
SALES_CHANNEL_FK R ENABLED VALIDATED
以上是“數據庫中約束的validate和able怎么用”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創新互聯行業資訊頻道!