我正在建立一个数据库,以便在周末安排音乐家。
我有一张存储音乐家的MUS_ROSTER
表。我还有一张INSTRUMENTS
表,其中列出了所列文书。
我有第三张表MUS_INST
(只是一个链接表),它有一个音乐家的PK和一个乐器的PK作为外键。它们是一种独特的约束。
然后我有一个MUS_SCHED
表,其中包含INST的ID和MUS的ID以及它发生的WK。
音乐家一周只能演奏一种乐器,一周内只能播放一种乐器。这些约束很好。
但是我可以让任何音乐家演奏任何乐器,因为我不知道如何让SQL检查MUS_INST表,这样我就不能把鼓手放在吉他上,反之亦然。
有没有办法在MUS_SCHED中设置MUSID和INSTID一起出现的检查
这是一个粗略的轮廓
MUSROSTER
INSTRUMENTS
MUS_INST
MUS_SCHED
如何让MUS_SCHED检查MUS_INST表上是否一起出现MUSID AND INSTID?
如何使表格检查链接表上是否出现复合键(组合)。
答案 0 :(得分:0)
在 public int RegId { get; set; }
public System.TimeSpan StartTime { get; set; }
public System.TimeSpan EndTime { get; set; }
public System.DateTime PresenceDate { get; set; }
和MUS_INST
上向MUSID
添加PK INSTID
。
然后在引用MUS_SCHED
上的PK的MUS_INST
上添加另一个FK。