我試圖在java數據庫中創建一個約束。我有兩個表:任務和子任務。這些表格具有1:m的關係(任務1:m子任務)。該約束需要檢查子任務中的start_date是否早於任務表中的開始日期。不知道,如何做到這一點。 我的代碼:Java DB約束
ALTER TABLE subtask
ADD CONSTRAINT c1 CHECK(
s.start_date >= (SELECT t.start_date
FROM task t, subtask s
WHERE t.start_date = s.start_date)
)
這給了我錯誤: 'subquery' may not appear in a CHECK CONSTRAINT definition because it may return non-deterministic results.
我怎樣才能表達SQL約束?任何幫助表示讚賞。
您正在使用哪些DBMS? –
我使用DERBY RDBMS – Roman