2016-12-25 74 views
1

是否可以刪除在CREATE TABLE命令內創建的檢查約束(無約束名稱聲明)?約束名稱未知時的丟棄檢查約束

+2

在sql developer中打開表格。你可能會發現oracle爲你指定了約束。 –

+0

如果您使用SQL Developer,那麼的確應該與正確的所有者連接,打開表格並導航到Constraints選項卡。您會發現@ VKP的解決方案將爲您提供的相同信息。您也可以從該選項卡中刪除約束。我不使用蟾蜍,但我認爲它是可能的。 – mathguy

回答

4

運行下面的查詢,以查找表的檢查約束的列表,包括他們所檢查:

select constraint_name, search_condition 
from user_constraints 
where table_name = 'Your table name' 
and constraint_type = 'C' -- To filter Check constraints alone 

複製相關約束的名稱,並將其粘貼在Alter table drop constraint命令。

Alter Table Your_table_name 
     Drop Constraint constraint_name; -- Replace constraint_name from above query result 
+0

一個非常詳細的答案。謝謝你的時間 ! –