2017-05-19 35 views
-1

我想弄清楚以下語句的正確的約束語法:如何在已創建的表中實施約束?

「對於給定的度量值,當值存在時,離羣值指示器必須爲NULL(並且相反,如果離羣指示符存在的)。

「價值」和「離羣指標」兩米欄,我有一個表。

我迄今已做的是

  1. 右鍵單擊表在左邊的名字ANE打開「編輯表」
  2. 點擊「編輯」
  3. 單擊左窗格中
  4. 點擊綠色加號>「新的檢查約束」

這裏做開放「約束」在「Edit Table」框中添加一個名爲「Check Condition」的新文本部分,我必須在Oracle SQL Developer可以理解的語法中指定約束。

此方法迄今爲止與其他約束一起工作,但由於某種原因,我無法弄清楚如何對這個特定字詞進行處理。

任何幫助將不勝感激,謝謝。

這一切都發生在Oracle SQL Developer中,順便說一句。

+0

與[this]類似(http://stackoverflow.com/questions/44060363/how-to-enforce-a-constraint-in-a-table-already-created)... – Aleksej

回答

0

你會在代碼中做到這一點;

alter t add constraint chk_t_cols 
    check ((Value is null and outlier is not null) or (value is not null and outlier is null)) 

check之後的部分是您在GUI中輸入的內容。

+0

嗨,抱歉,但這是行不通的,我不斷收到此錯誤:ORA-02293:無法驗證(******。MEASUREMENT_CHK1) - 檢查約束違反。 編輯:星號標誌是我的用戶名btw和「MEASUREMENT」是我試圖把這個約束的表的名稱。 –

相關問題