1. 试述关系模型的三个组成部分。
    关系数据模型的数据结构、关系数据模型的操作集合和关系数据模型的完整性约束。

  2. 简述关系数据语言的特点和分类。
    特点
    语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用
    分类
    1) 关系代数语言
    2) 关系演算语言:元组关系演算语言和域关系演算语言
    3) SQL:具有关系代数和关系演算双重特点的语言

  3. 定义并理解下列术语,说明它们之间的联系与区别:
    (1) 域,笛卡儿积,关系,元组,属性;
    1) 域:一种具有相同数据类型的值的集合
    2) 笛卡尔积:给定一组域D1,D2,…,Dn,这些域可以是相同的域。这组域的笛卡尔积为D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}其中每一个元素(d1,d2,…,dn)叫做一个n元组(n-tuple)或简称元组(Tuple)。元素中的每一个值di叫做一个分量
    3) 关系:在域D1,D2,…,Dn上笛卡尔积D1×D2×…×Dn的子集称为关系,表示为R(D1,D2,…,Dn)
    4) 元组:关系中的每个元素是关系中的元组
    5) 属性:关系中的一列即为一个对应一个域,给每一列起一个名称即为属性名
    联系和区别:域是集合,由域定义出了笛卡尔积,笛卡尔积子集为关系,关系是一个二维表,表的每行对应一个元组,表的每列对应一个域。
    (2) 主码,候选码,外码;
    1) 主码:若一个关系有多个候选码,则选定其中一个为主码(Primarykey)。
    2) 候选码:若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码(Candidatekey)。
    3) 外部码:设F是基本关系R的一个或一组属性,但不是关系R的码,如果F与基本关系S的主码K相对应,则称F是基本关系R的外部码(Foreignkey),简称外码。
    区别和联系:主码是多个候选码的其中一个,外码和某一关系中的主码对应
    (3) 关系模式,关系,关系数据库。
    1) 关系模式:是对关系的型的描述,说明关系由哪些属性组成,这些属性来自于哪些域,以及属性与域的映象。它可以形式化地表示为R(U,D,DOM,F)其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,DOM为属性向域的映像集合,F为属性间数据的依赖关系集合
    2) 关系:在域D1,D2,…,Dn上笛卡尔积D1×D2×…×Dn的子集称为关系,表示为R(D1,D2,…,Dn) ,简记为: R(U);
    3) 关系数据库:其也有型和值之分。关系数据库的型也称为关系数据库模式,是对关系数据库的描述,它包括若干域的定义及在这些域上所定义的若干关系模式。关系数据库的值是这些关系模式在某一时刻所对应的关系的集合,通常称为关系数据库。
    区别和联系:关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳定的;而关系是动态的、随时间不断变化的,因为关系操作在不断更新着数据库中的数据。

  4. 举例说明关系模式和关系的区别。
    关系模式是静态的,比如一张学生信息的二维表,其有姓名、学号、性别的等属性,这些属性的域和类型和长度都是固定的,而关系是动态的,如一张具体的二维表,除了关系名和属性以外的数据经常被更新,如进行修改,插入,删除操作,所以不同时刻、关系可能不一样。关系就是数学中的集合了,每一行就是集合的一个元素

  5. 试述关系模型的完整性规则。在参照完整性中,什么情况下外码属性的值可以为空值?
    1)关系模型的完整性规则是对关系的某种约束条件。关系模型中可以有3类完整性约束:实体完整性、参照完整性和用户定义的完整性。
    其中,实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为关系的两个不变性,应该由关系系统自动支持。
    (1) 实体完整性规则:若属性A 是基本关系R 的主属性,则属性A 不能取空值。
    (2) 参照完整性规则:若属性(或属性组)F 是基本关系R 的外码,它与基本关系S 的主码Ks 相对应(基本关系R 和S 不一定是不同的关系),则对于R 中每个元组在F 上的值必须为以下两者之一:
    a) 或者取空值(F 的每个属性值均为空值);
    b) 或者等于S 中某个元组的主码值。
    (3) 用户定义完整性:是针对某一具体关系数据库的约束条件。它反映某一具体应用涉及的数据所必须满足的主义要求。

  1. 参照完整性中,外部码属性值可以为空,表示该属性的值尚未确定。但前提条件是该外部码属性不是其所在关系的主属性。
    例如:
    (1) 在 “学生”表中,“专业号”是一个外部码,不是“学生”表的主属性,其这可以为空。其语义是,该学生的专业尚未确定。 学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名)
    (2) 而在“选修”表中,“课程号”虽然也是一个外部码属性,但它又是“选修”表的主属性,所以其值不能为空。因为关系模型必须满足实体完整性。 课程(课程号,课程名,学分) 选修(学号,课程号,成绩)
  1. 设有一个SPJ数据库,包括S、P、J及SPJ4个关系模式:
    S(SNO,SNAME,STATUS,CITY);
    P(PNO,PNAME,COLOR, WEIGHT);
    J(JNO,JNAME,CITY);
    SPJ(SNO,PNO,JNO,QTY)。
    供应商表S由供应商代码(SNO)、供应商姓名(SNAME)供应商状态(STATUS)、供应商所在城市(CITY)组成。
    零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成。
    工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY) 组成。
    供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(INO)、供应数量(QTY)组成,
    表示某供应商供应某种零件给某工程项目的数量为QIY。
    今有若干数据如下:

试用关系代数、ALPHA 语言完成如下查询:
(1)求供应工程J1零件的供应商号码SNO;
(2)求供应工程JI零件PI的供应商号码SNO;
(3)求供应工程J1零件为红色的供应商号码SNO;
(4)求没有使用天津供应商生产的红色零件的工程号JNO:
(5)求至少用了供应商S1所供应的全部零件的工程号JNO。

(1) ∏SNO(σJNO=’J1’(SPJ))
(2) ∏SNO(σJNO=’J1’∧PNO=’P1’(SPJ))
(3) ∏SNO(σJNO=’J1’∧COLOR=’红’(SPJ∞P))
(4) ∏JNO(J)-πJNO(σCOLOR=’红’(P∞(σCITY=’天津’(SPJ∞S)))) 
(5) ∏JNO,PNO(SPJ)÷πPNO(σSNO=’S1’(SPJ))
7.试述等值连接与自然连接的区别和联系。
从两个关系的广义笛卡儿积中选取给定属性间满足一定条件的元组,称为θ连接;当连接符θ为等号时,称为等值连接。从两个关系的广义笛卡儿积中选取在相同属性列上取值相等的元组,并去掉重复的列,称为自然连接。(连接运算符是“=”的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组,自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。)
区别:自然连接中相等的分量必须是相同的属性组,并且要在结果中去掉重复的属性,而等值连接则不必。
联系:自然连接与等值连接的联系:自然连接是等值连接的特殊处理,当R与S无相同属性时,R∞S = R×S。

8.关系代数的基本运算有哪些?如何用这些基本运算来表示其他运算?
系代数基本运算有:
一元运算:选择、投影、更名
多元运算:笛卡儿积、并、差
关系代数其他运算有:
集合交、自然连接、除、
用基本运算表示其他运算如下:
R∩S = R - (R - S) 
R∞S =σR[A]=S[A] (R×S) 
R÷S =∏X ( R )-∏X(∏X( R )×∏Y( S )-R)

数据库原理课后答案 第二章相关推荐

  1. python语言程序设计2019版第二章课后答案-python语言程序设计基础课后答案第二章...

    python语言程序设计基础课后答案第二章 以下合法的用户自定义标识符是____________. 导入模块或者模块中的元素要使用关键字________ . 下列哪个函数是用来控制画笔的尺寸的____ ...

  2. 操作系统课后答案第二章

    **第二章 进程的描述与控制** 第二章 进程的描述与控制 1.什么是前驱图?为什么要引入前驱图? 答:前驱图:前驱图是一个有向,不循环图.用于描述进程之间执行的先后关系.图中每个点可以表示一个程序段 ...

  3. 云计算技术与应用课后答案第二章

    第二章 云标准 1.云基础架构的融合部署分为三个层次的融合,它们是: (BCD) A.应用层的融合 B.硬件层的融合 C.业务层的融合 D.管理层的融合 2.下列关于云计算与SOA(面向服务的体系结构 ...

  4. 数据库原理课后答案 第六章

    建立一个关于系.学生.班级.学会等诸信息的关系数据库. 学生:学号.姓名.出生年月.系名.班号.宿舍区. 班级:班号.专业名.系名.人数.入校年份. 系:系名.系号.系办公地点.人数. 学会:学会名. ...

  5. 计算机网络谢希仁第七版课后答案第二章 物理层

    2-01 物理层要解决哪些问题?物理层的主要特点是什么? 答:物理层要解决的主要问题: (1)物理层要尽可能地屏蔽掉物理设备和传输媒体,通信手段的不同,使数据链路层感觉不到这些差异,只考虑完成本层的协 ...

  6. 【考研复习】《操作系统原理》孟庆昌等编著课后习题+答案——第二章

    前言 此书在最后的附录B中,有给出部分重难点部分的参考答案.会在最后放上图片.如果想要此书习题答案,可点以下链接:为一个压缩包,以图片形式,习题图片按章节排序,答案图片按书页排序. <操作系统原 ...

  7. 8086微型计算机原理答案,8086微型计算机原理与应用(吴宁)习题答案(第二章)

    8086微型计算机原理与应用(吴宁)习题答案(第二章) 8086微型计算机原理与应用(吴宁)习题答案(第二章) 第二章 微处理器结构 2-14 存储空间范围 CS×16+0000H - CS×16+F ...

  8. 算法竞赛入门经典第二版课后习题答案第二章

    算法竞赛入门经典第二版课后习题答案 第二章 习题2-1水仙花数 输出100-999中的所有水仙花数.若三位数ABC满足ABC=A^3+B^3+C^3,则称其为水仙花数.例如153=1^3+5^3+3^ ...

  9. java中北大学ppt总结+课后习题第二章(小宇特详解)

    java中北大学ppt总结+课后习题第二章(小宇特详解) 基本数据类型 Java语言有8种基本数据类型. 逻辑类型:boolean.1字节 整数类型: 1字节整数类型:byte. 2字节整数类型:sh ...

最新文章

  1. prometheus--初见
  2. 特斯拉AI日放大招!发布自研超算Dojo芯片,每秒可执行1024亿次计算
  3. 交换机配置软件_如何配置远程登陆交换机?最简单的解释方式,一看就懂
  4. HDU-2688 Rotate
  5. python3程序设计基础刘德山答案_Python 3 程序设计学习指导与习题解答
  6. Linux/unix不同shell环境下数值运算的处理
  7. Kotlin学习笔记 第四章 Java调用Kotlin
  8. chrome ninja 文件_ninja和gn
  9. 第一轮返工潮,哪些城市疫情传播压力最大
  10. tidyr | 变量取值组合、缺失值处理、变量分列与合并
  11. 汉语言文学专业c学校,哪个学校汉语言文学专业最好?有哪些录取要求最低分数线是多少?...
  12. 当不知轴承型号时如何寻找轴承故障频率_知课堂 | 快速计算轴承特征频率
  13. UI设计中常见的各种布局有哪些?|优漫动游
  14. 一款非常不错的高仿UC浏览器源码下载
  15. matlab导入origin,matlab导入origin
  16. 学习牛津书的免费网站
  17. Android Studio GIT 仓库地址 变更 方法
  18. kafka 命令重新启动_命令行基础知识:关闭和重新启动
  19. JS-String类型及方法
  20. shell脚本编程笔记(九)—— 初识流编辑器 sed

热门文章

  1. 青藤 #10115 栈练习1
  2. 泛型(泛型类、泛型方法)
  3. linux之sed命令详解
  4. MacVim中文乱码解决
  5. Minecraft 1.12.2模组开发(四十三) 自定义盾牌(Shield)
  6. java.lang.IllegalStateException: Failed to introspect Class报错原因和解决办法
  7. SNMP、MIB和OID概述
  8. SNTP获取时间源统一时间
  9. ios12升级, App应用崩溃闪退
  10. 【TIPC】三、Messaging