(1)在关系S中插入的学生年龄值应在16~25岁之间;(2)在关系SC中插入元组时,其S#值和C#值必须别在S和C中出现;(3)在关系SC中修改GRADE值时,必须仍在0~100之间;(4)在删除关系C中一个元组时,首先要把关系SC中具有同样C#值的元组全部删去;(5)在关系S中把某个S#值改为新值时,必须同时把关系SC中那些同样的S#值也修改为新值。
(1)在关系S中插入的学生年龄值应在16~25岁之间;(2)在关系SC中插入元组时,其S#值和C#值必须别在S和C中出现;(3)在关系SC中修改GRADE值时,必须仍在0~100之间;(4)在删除关系C中一个元组时,首先要把关系SC中具有同样C#值的元组全部删去;(5)在关系S中把某个S#值改为新值时,必须同时把关系SC中那些同样的S#值也修改为新值。
【正确答案】:.(1)用域约束子句定义CREATEDOMAINAGESMALLINTCHECK(AGE>=16ANDAGE<=25)(2)用检查子句定义:CREATETABLESC(S#CHAR(4),C#CHAR(4),GRADESMALLINT,PRIMARYKEY(S#,C#)CHECK(S#IN(SELECTS#FROMS)),CHECK(C#IN(SELECTC#FROMC))),(3)用检查子句定义:CREATETABLESC(S#CHAR(4),C#CHAR(4),GRADESMALLINF,PRIMARYKEY(S#,C#)CHECK(GRADE>=0ANDGRADE<=100)(4)FOREIGNKEY(C#)REFERENCESS(S#)ONDELETECASCADE(5)FOREIGNKEY(S#)REFERENCESS(S#)ONUPDATECASCADE本修题改分数5分设有关系R和S如下图所示。RSABa1b1a2a2a3b3ACa140a250a355关系R和S试用SQL语句实现:
Top