阅读以下说明和关系表,回答问题1~5。
[说明]
已知某儿童医院的医疗数据库的模式如下:
PATIENT (PNUM,PNAME,SEX,AGE)
DOCTOR (DNUM,DNAME,DEPT)
ORDER (PNUM,DNUM,NUMBER)
其中PNUM表示病人号,PNAME表示病人姓名,SEX表示病人的性别,AGE表示病人的年龄,DNUM表示医生工作号,DNAME表示医生的姓名,DEPT表示医生所在的科室, NUMBER表示医生给病人所看病的次数。
试定义下列完整性约束:
[问题2] 在ORDER中插入元组时,其中的DNUM和PNUM必须出现在PATIENT和DOCTOR中。 |
参考答案:
解析:在定义ORDER时使用权用外键约束CREATE TABLE ORDER( PNUM CHAR(4), DNUM CHAR(4), NUMBER REAL, PRIMARY KEY ( PNUM, DNUM), PRIMARY KEY ( PNUM ) REFERENCES PATIENT( PNUM), PRIMARY KEY (DNUM) REFERENCES DOCTOR(DNUM),)