1

我正在自学 SQL,但我被卡住了。我有一个 Car-garage 数据库,其中包含一个名为 Tasks 的表。表 Tasks 有 3 列:Tasknumber(PK)、NumberPlate 和 DaySchedule。在 DDL 中,我想使用一个约束来检查车牌的数量,并且每天只允许一个任务。

以下是我尝试过的。但是,它限制的是每条记录而不是板数。

CREATE TABLE Tasks (
   Tasknumber    NUMERIC(5)   not null,
   NumberPlate   VARCHAR(8)   not null,
   DaySchedule   DATE         not null,
   Description   VARCHAR(255) null,
   CONSTRAINT PK_Tasknumber PRIMARY KEY  (Tasknumber),
     D AS DAY(DaySchedule) PERSISTED,
     M AS MONTH(DaySchedule) PERSISTED,
     Y AS YEAR(DaySchedule) PERSISTED,
  CONSTRAINT UQ_DATA_DMY UNIQUE(D,M,Y)
)

我能做些什么来纠正这个问题?

4

1 回答 1

0

如果我理解正确,您只需要UNIQUE(NumberPlate, DaySchedule). 然后,对于每个NumberPlate,每天最多有一个任务。

于 2012-05-03T10:07:54.123 回答