数据库系统概论--第二章课后习题

news2025/3/1 2:59:34

1.试述关系模型的三个组成部分。

答:

   关系模型由关系数据结构、(关系操作集合)和(关系完整性约束)三部分组成。

2. 简述关系数据语言的特点和分类。

答:特点:1)集合操作方式;

2)高度非过程化;

3)集查询、DDL、DML、DCL于一体

分类:关系数据语言可以分为三类:关系代数语言、关系演算语言、SQL;其中关系演算语言又可分为:元组关系演算语言和域关系演算语言。

3.定义并理解下列术语,说明它们之间的联系和区别:

    (1笛卡尔积关系,元组,属性

(2)主码,候选码,外码

(3)关系模式,关系关系数据库

答: 

               名称                                定义
                                               域  域是一组具有相同数据类型的值的集合
              笛卡尔积 域上面的一种集合运算,就是集合相乘
                关系 一个关系对应通常说的一张表
                元组 表中的一行即为一个元组
              属性    表中的一列即为一个属性,给,每个属性起一个名称即为属性名
           候选码  某一属性组的值能唯一的标识一个元组,而其子集不能,则称改属性为候选码
          主码若一个关系由多个候选码,则选定其中一个作为主码
       关系模式    关系的描述称为关系模式
    关系数据库  关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常就被称为关系数据库

笛卡尔积:


 联系和区别:

(1)联系和区别
1.属性的取值来自某个域
2.笛卡尔积是所有域的所有取值的一个组合
3.笛卡尔积中的每个元素是一个元组
4.关系是一张二维表,表的每行对应着一个元组,表中的每一列对应一个属性

(2)联系和区别:

候选码的值可以唯一的标识一个元组,如果一个关系里面有多个候选码,那么其中的一个定为主码,外码是一个与候选码相关的属性 。

(3)联系和区别
关系模式是对关系的描述,关系是关系模式在某一个时刻的状态或内容,关系数据库是所有关系的集合,关系模式在某一时刻对应的关系的集合是关系数据库。
 关系模式是对关系的描述,是静态,稳定的;关系是关系模式在某一个时刻的状态或内容,是动态的,不断变化的

4.举例说明关系模式和关系的区别。

答:关系模式是静态的,关系是动态的。对于常见的二维表,关系模式通常指的是二维表的表头,即有哪些列构成,每个列的名称、类型、长度等。关系通常指的是一张表的具体内容,因为表经常进行插入、删除、修改等操作,关系可能不一样。在关系数据库中,关系模式是型,关系是值。

5.试述关系模型的完整性规则。在参考完整性中,什么情况下外码属性能为空值?

答:

 

 6.设有一个SPJ数据库,包括s、P、J、SPJ四个关系模式: S(SNO,SNAME,STATUS,CITY); P(PNO,PNAME,COLDR,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)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。 今有若干数据如下: 试分别用关系代数、ALPHA语言、QBE语言完成下列操作:

(1)求供应工程J1零件的供应商号码SNO;

(2)求供应工程J1零件P1的供应商号码SNO;

(3)求供应工程J1零件为红色的供应商号码SNO;

(4)求没有使用天津供应商生产的红色零件的工程号JNO;

(5)求至少用了供应商Sl所供应的全部零件的工程号JNO。

 答:

关系代数 :

(1)∏SNO(σSNO='J1'(SPJ))  

(2)∏σSNO='J1' ∧ 'P1'(SPJ)

(3)ΠSNO​(σCOLOR=′红′​(P)⋈σJNO=′J1′​(SPJ))

(4)ΠJNO​(SPJ)−ΠJNO​(σCITY=′天津′∧COLOR=′红′​(S⋈P⋈SPJ))

(5)JNO,PNO​(SPJ)÷ΠPNO​(σSNO=′S1′​(SPJ))

ALPHA语言:

(1)GET W(SPJ.SNO):SPJ.JNO=‘J1’

(2)GET W(SPJ.SNO):SPJ.JNO=‘J1’∧ SPJ.PNO=‘P1’

(3)RANGE P PX GET W(SPJ.SNO):                               SPJ.JNO=‘J1’∧∃PX(PX.COLOR=‘红’∧PX.PNO=SPJ.PNO)

(4)RANGE SPJ SPJX P PXS SX

GET W(J.JNO):┐∃SPJX(SPJX.JNO=J.JNO∧

∃SX(SX.SNO=SPJX.SNO∧SX.CITY=’天津’∧

∃PX(PX.PNO-SPJX.PNO∧PX.COLOR=’红’))

(5)RANGE SPJ SPJX  SPJ SPJY  P PX

GET W(J.JNO): ∀PX(∃SPJX(SPJX.PNO=PX.PNO∧SPJX.SNO=’S1’)

∃SPJY(SPJY.JNO=J.JNO∧SPJY.PNO=PX.PNO))

QBE语言:

(1)GET W(SPJ.SNO):SPJ.JNO=‘J1’

(2)

(3)

(4)

(5)

7.试述等值连接与自然连接的区别和联系 。

答:

从两个关系的广义笛卡儿积中选取给定属性间满足一定条件的元组,称为θ连接;当连接符θ为等号时,称为等值连接。

从两个关系的广义笛卡儿积中选取在相同属性列上取值相等的元组,并去掉重复的列,称为自然连接。

自然连接与等值连接的区别:自然连接中相等的分量必须是相同的属性组,并且要在结果中去掉重复的属性,而等值连接则不必。

自然连接与等值连接的联系:自然连接是等值连接的特殊处理,当R与S无相同属性时,R∞S = R×S。

   简言之,把等值连接的相同属性列去掉一个就是自然连接。

8.关系代数的基本运算有哪些?如何用这些基本运算来表示其他运算?

答:

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/414521.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++STL精讲】string类的基本使用与常用接口

文章目录💐专栏导读💐文章导读🌷为什么要学习string类?🌷string类的基本使用🌷string类的常用接口🌺数据访问函数🌺容量相关函数🌺操作函数🌷迭代器与范围for…

“三步走”推动云原生转型之路

对于企业而言,如何平稳的从传统研发模式过渡到云原生时代,除了坚持结合云原生应用的特点,持续推动基础架构和应用架构的转型,还需要围绕“深度融合云技术能力、做厚业务基础能力、提升内建质量”等三个步骤,推进云原生…

SpringBoot 防护XSS攻击

目录 一、前言 1.1、XSS攻击流程 1.2、XSS攻击分类 1.3、攻击方式 二、解决方案 2.1、SPRINGBOOT XSS过滤插件(MICA-XSS) 2.2、MICA-XSS 配置 三、项目实战 3.1、项目环境 3.2、测试 3.2.1、测试GET请求 3.2.2、测试POST请求 3.2.3、测试POS…

优秀测试工程师必须掌握的关系型和非关系型数据库

写在前面 如果平时没有接触到数据库,或者接触数据库不够深入,那么这篇文章很适合你,这篇文章主要从关系性和非关系型数据库的适用场景出发,介绍了MySQL,MongoDB,Redis数据库的安装,备份和常用命令以及MySQL的性能测试…

CRM客户管理软件开发功能有哪些?

互联网技术的不断提高使得企业管理方式也发生了变化,企业CRM系统应用市场逐渐扩大,相关软件开发也引起越来越多商家企业的关注。因为企业CRM系统软件开发能够根据企业需求制作,帮助企业更好的追踪管理客户信息,实时更新并进行相关…

Amazon SageMaker简直就是机器学习平台的天花板

一、前言 最近参与了亚马逊云科技【云上探索实验】活动,通过Amazon SageMaker基于Stable Diffusion模型,非常简单快速搭建的第一个AIGC,一开始以为非常复杂,不懂动手操作,但实际上操作非常简单,没有想象中…

自己开发X86操作系统--LIUNUXOS

为了纪念Linus Torvalds创始开发的linux,我将自己开发的os命名为LIUNUXOS。 LIUNUXOS其原码分为两个部分,汇编工程和c/c工程,地址分别为: LIUNUXOS汇编工程原码地址 LIUNUXOS c/c工程原码地址 在这些工程中,源程序的…

Grafana获取URL地址中的json数据

官方教程:https://grafana.github.io/grafana-json-datasource/query-editor 文章目录配置Grafana的JSON API插件模拟URL路由配置插件展示json数据最终效果配置Grafana的JSON API插件 直接在界面中下载这个插件即可: 也可以使用命令安装: …

Python每日一练(20230411)

目录 1. 环形链表 🌟 2. 比较版本号 🌟🌟 3. 基本计算器 🌟🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏…

hbuildX运行uniapp项目到andiord真机调试

一、打开手机开发者模式 我的是小米手机,这里就介绍一下小米手机如何打开开发者模式。其他机型可以百度一下。 1、手机 桌面 找到【设置】点击打开 2、点击【我的设备】。 3、进入后上滑,看见【全部参数】的按钮,点击打开 4、进入后上滑…

内存管理、内存映射、mmap

内存管理 MMU:Memory Management Unit,内存管理单元,CPU中独立硬件,负责处理CPU的内存访问请求。虚拟地址到物理地址的转换(即虚拟内存管理)。 物理内存:真实存在的插在主板内存槽上的内存条&a…

springboot2.7.10整合neo4j -- 关系双向绑定(UNDIRECTED)

背景 依赖 springboot版本 2.7.10 本地neo4j安装的版本&#xff1a;4.4.19 依赖如下&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-neo4j</artifactId></dependency>sprin…

Java基础(七)面向对象编程(高级)

1. 关键字&#xff1a;static 回顾类中的实例变量&#xff08;即非static的成员变量&#xff09; class Circle{private double radius;public Circle(double radius){this.radiusradius;}public double findArea(){return Math.PI*radius*radius;} }创建两个Circle对象&…

NanoPC-T4 RK3399:(一)平台与框架介绍

概述:近几年工作一直围绕Rockchip进行,手里刚好有一块NanoPC-T4的板子,本专栏将围绕友善NanoPC-T4做一个深度探究和总结,涉及uboot,kernel,rootfs定制等知识点。 一:硬件介绍 NanoPC-T4不仅是世界上最小的全功能接口RK3399一体化主板, 而且是一款完全开源的高性能计算平…

Winnolin PK参数及BE分析

文章目录一、PK参数分析一、非房室模型分析方法操作1.创建数据模型2.建立字段映射3.选择模型参数4.设置参数单位&#xff08;Units&#xff09;5.选择输出参数6.执行&#xff0c;查看结果二、生物等效性分析1.创建数据模型2.建立字段映射3.执行查看结果一、PK参数分析 药代动力…

Python机器学习:支持向量机

这是我读本科的时候第一个接触到的机器学习算法&#xff0c;但也是第一个听完就忘的。。。 他的基本思想很简单&#xff1a;想办法把一个样本集划成两个部分&#xff1a;对于空间中的样本点集合&#xff0c;我们找到一个超平面把这个样本点集合给分成两个部分&#xff0c;其中…

电源的安规设计

目录电源的安规设计1、安规的含义2、执行安规的目的3、电子产品设备可能存在的危险4、安全的基本原则5、安全防护的基本思想6、电击对人的伤害7、危险电压8、人对温度的刺激表现9、根据设备所处的环境&#xff0c;确定其污染等级10、安全距离的确定11、安规器件的要求——X、Y电…

【51单片机Task】:led十六进制控制led灯详解、按键控制流水灯、跑马灯等任务

学习目标&#xff1a; 学习普中51单片机的按键控制led灯。 电路图&#xff1a; 学习内容&#xff1a; LED灯的十六进制怎么算&#xff1f;&#xff1f;&#xff1f; 在这给大家算一下&#xff1a;首先先看一下LED模块的电路图&#xff01; 实物图&#xff1a; 可以把 D1 …

C#基础复习--枚举

枚举 目录 枚举 设置底层类型和显式值 隐式成员编号 位标志 Flags 特性 枚举是由程序员定义的类型&#xff0c;与类或结构一样 与结构一样&#xff0c;枚举是值类型&#xff0c;因此直接存储他们的数据&#xff0c;而不是分开存储成引用和数据 枚举只是一种类型的成员&#…

C语言实践——通讯录(3)(文件版)

首先感谢上一篇博客的大佬们的点赞&#xff0c;非常感谢&#xff01;&#xff01;&#xff01; 目录 前言 一、需要添加的功能 1.增加保存数据函数——可以保存数据到文件中 主要逻辑&#xff1a; 注意事项&#xff1a; 代码实现&#xff1a; 2.修改初始化函数——新…