数据库 试述关系模型的完整性规则。在参照完整性中,什么情况下外码属性的值可以为空值?

数据库系统 专栏收录该内容
6 篇文章 4 订阅

前言

忘记关系模型中主属性、主码、元组等名词的可以去看看: CSDN:数据库 关系模型的基本概念

1. 试述关系模型的完整性规则。

实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值。

  • 举个栗子:
  • 选修(学号课程号,成绩)
  • 其中加粗了的学号和课程号都是主属性;
  • 则“学号”和“课程号”两个属性都不能取空值。

2. 在参照完整性中,什么情况下外码属性的值可以为空值?

若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
或者取空值(F的每个属性值均为空值);
或者等于S中某个元组的主码值。

  • 举个栗子:
  • 学生(学号,姓名,性别,专业号,年龄)
  • 专业(专业号,专业名)
  • 其中加粗了的学号和专业号都是主码;
  • 则学生关系中每个元组的“专业号”属性只能取下面两种类值:
    1. 空值:表示尚未给该学生分配专业;
    2. 非空值:这时填入的该值必须是“专业”关系中某个“专业号”的值;

资料参考

  • 11
    点赞
  • 0
    评论
  • 21
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

第2章 关系数据库 1 .试述关系模型的三个组成部分。 答:关系模型关系数据结构、关系操作集合和关系完整性约束三部分组成。 2 .试述关系数据语言的特点和分类。 答:关系数据语言可以三类: 关系代数语言。 关系演算语言:元组关系演算语言和域关系演算语言。 SQL:具有关系代数和关系演算双重特点的语言。 这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言使用。 4 .试述关系模型完整性规则参照完整性什么外部码属性可以空?什么情况可以空? 答:实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值。 若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R每个元组F上的必须:或者取空值(F的每个属性空值);或者等于S某个元组的主码。即属性F本身不是主属性,则可以空值,否则不能取空值。 5.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式: 1)求供应工程J1零件的供应商号码SNO: πSno(σSno=‘J1’(SPJ)) 2)求供应工程J1零件P1的供应商号码SNO: πSno(σSno=‘J1’∧Pno=‘P1‘(SPJ)) 3)求供应工程J1零件红色的供应商号码SNO: πSno(σPno=‘P1‘ (σCOLOR=’红‘ (P)∞SPJ)) 4)求没有使用天津供应商生产的红色零件的工程号JNO: πJno(SPJ)- πJNO(σcity=‘天津’∧Color=‘红‘ (S∞SPJ∞P) 5)求至少用了供应商S1所供应的全部零件的工程号JNO: πJno,Pno(SPJ)÷ πPno(σSno=‘S1‘ (SPJ)) 6.试述连接与自然连接的区别和联系。 答:连接运算符是“=”的连接运算称连接。它是从关系R与S的广义笛卡尔积选取A,B属性相等的那些元组 自然连接是一种特殊的等连接,它要求两个关系进行比较的分量必须是相同的属性组,并且结果把重复的属性列去掉。
©️2021 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值