我在用mysql-workbench-ce做大学作业。我有4张table: Applicants, Universities, Job, Interview
. Interview
在其他3个表中有外键: appID
(申请人id), uniID
(大学id)和 jobID
(作业id)。此外 job
表有一个 uni
列,它是 universities.id
. 基本上,每个工作都有一个工作编号和与之相关的大学。每次面试都有一个申请人、一份工作和一所大学,此外还有一些其他信息。
我想弄清楚如何检查招聘信息(职位号+其关联大学)是否进入 interview
表实际存在于 job
table。
例如,如果 job
是: ID | JobID | UniID | .. 1 1 1 .
然后 interview
表不应接受以下内容: ID | AppID | JobID | UniID | ... x x 1 2 .
因为没有工作 JobID = 1
以及 UniID = 2
. SELECT * FROM job as J LEFT JOIN interview as I ON J.uni = I.uniid WHERE J.id = I.jobid
是我针对这个问题提出的一个检查,但是,我不确定是否应该尝试在触发器中使用它,还是作为Assert的一部分使用它。
1条答案
按热度按时间stszievb1#
您正在寻找外键关系。
如果
jobs
表的两列上还没有主键/唯一键,请定义一个:然后,可以将外键添加到
interviews
:请注意,即使
jobID
已是中的主键jobs
.