我正在尝试在 java DB 中创建一个约束。我有两个表:任务和子任务。这些表具有 1:m 关系(任务 1:m 子任务)。约束需要检查子任务中的开始日期不早于任务表中的开始日期。不确定,如何做到这一点。我的代码:
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 中表达约束?任何帮助表示赞赏。