【数据库原理】期末突击(2)

有不会的题可以后台问我的哦,看见了就会回。祝大家期末心想事成。

数据库大题显而易见就只有几类,大家可以根据老师平时讲解的例题对应去解决一类型的题目。

前提知识;

候选码==候选键==关键字==键==码

关系代数:(1)传统:交、并、差、笛卡尔积(2)专门:选择、投影、连接、除

关系演算:并、差、选择、投影、笛卡尔积

SQL:select */列名/表达式/函数/常量 from 表名/视图  where 条件 

           insert、update、delete

E-R图实体型、属性、关系

一:关系代数和关系演算的转换

这个题型变化大,举个例子

查询信息系(IS系)全体学生

关系代数:

关系演算:

t[5]中5的含义是IS在表中是第几个属性

二:SQL语句

现有关系数据库如下:

     学生(学号,姓名,性别,专业)

     课程(课程号,课程名,学分)

     学习(学号,课程号,分数)

用SQL语句实现下列1—5小题

1.        检索所有选修了课程号为“C112”的课程的学生的学号和分数;                 

2.        检索“英语”专业学生所学课程的信息,包括学号、姓名、课程名和分数;

3.        检索“数据库原理”课程成绩高于90分的所有学生的学号、姓名、专业和分数;

4.        检索没学课程号为“C135”课程的学生信息,包括学号,姓名和专业;  

5.        检索至少学过课程号为“C135”和“C219”的课程的学生的信息,包括学号、姓名和专业。

答案:

1.

SELECT 学号,分数 FROM 学习 WHERE 课程号=’C112’

2.

SELECT 学生.学号,姓名,课程名,分数

FROM 学生,学习,课程      

WHERE 学习.学号=学生.学号 AND 学习.课程号=课程.课程号 AND 专业=’英语’  

3.

SELECT 学生.学号,姓名,专业,分数

FROM 学生,学习,课程      

WHERE 学生.学号=学习.学号 AND 学习.课程号=课程.课程号 AND分数>90 AND 课程名=‘数据库原理’

4.

SELECT 学号,姓名,专业

FROM 学生

                WHERE 学号 NOT IN      (1分)

(SELECT 学号 FROM 学习 WHERE 课程号=‘C135’)

5.

SELECT 学号,姓名,专业 FROM 学生 WHERE 学号 IN  

(SELECT X1.学号 FROM  学习 X1,学习 X2  WHERE X1.学号=X2.学号 AND X1.课程号=‘C135’AND X2.课程号=‘C219’)

三:E-R图与关系模式的转换

设有如下教学环境,一个班级有多名学生,一个学生只属于一个班级。一个学生可以选修若干门课程,每门课若干学生选修,学生选修每门课有一个成绩。一门课程只有一位教师讲授,一名教师可以讲投多门课,每位教师属于一个教研室,一个数研室有若干教师。(前面是描述的实体和联系,后面描述的是属性)其中班级由班级编号、班级名称等属性描述;学生由学号、姓名等属性描述;课程由课程编号、课程名称等属性描述;教师由教师编号、教师姓名、教师地址等属性描述;教研室由教研室编号、教研室名称等属性描述。
1、根据上述语义画出ER图,要求在图中画出属性并注明联系的类型。
2、将ER模型转换成关系模式,并指出每个关系模式的主键和外键。

(1)

(2)主键红色外键蓝色

学生(学号,姓名,班级编号)学生与班级多对一

班级(班级编号,班级名称)

课程(课程编号,课程名称,教师编号)课程与教师多对一

教师(教师编号,教师姓名,教师地址,教研室编号)教师与教研室多对一

教研室(教研室编号,教研室名称)

选修(学号,课程号(既是主键,又是外键),成绩)学生和课程是多对多的关系,所以需要介入选修表

四:候选码、函数依赖、范式

现有如下关系模式:借阅(图书编号,书名,作者名,出版社,读者编号,读者姓名,借阅日期,归还日期),基本函数依赖集F={图书编号→(书名,作者名,出版社),读者编号→读者姓名,(图书编号,读者编号,借阅日期)→归还日期}

(1)读者编号是候选码吗?(2分)

(2)写出该关系模式的主码。(2分)

(3)该关系模式中是否存在非主属性对码的部分函数依赖?如果存在,请写出一个。(2分)

(4)该关系模式满足第几范式?并说明理由。(4分)

答案:

(1)不是(2分)。

(2)(图书编号,读者编号,借阅日期)(2分)

(3)存在(1分)。(图书编号,读者编号,借阅日期)→书名、(图书编号,读者编号,借阅日期)→作者名、(图书编号,读者编号,借阅日期)→出版社、(图书编号,读者编号,借阅日期)→读者姓名(1分,四个函数依赖任选一个即可)

(4)1NF。因为存在非主属性对码的部分函数依赖。

五:求闭包、函数依赖

设关系模式R(ABCD),F是R上成立的FD集,F{A→B,B→C}

(1)试写出属性集BD的闭包(BD)+

(2)是写出所有左部是B的函数依赖

六:求候选码和关系分解

设有关系模式R(运动员编号、比赛项目、成绩、比赛类别、比赛主管),如果规定:每个运动员每参加一个比赛项目,只有一个成绩;每个比赛项目只属于一个比赛类别;每个比赛类别只有一个比赛主管。试回答下列问题:
①根据上述规定,写出模式R的基本FD和码;
②说明R不是2NF的理由,并把R分解成2NF关系模式集;
③进而分解成3NF关系模式集。

七:无损分解、范式级别

设关系模式R(ABCD),在R上有5个相应的FD集及分解:
(1)F=(B→C,D→A,p=(BC,AD)
(2)F=(AB→C,C→A,C→D),p=(ACD,BC)
(3)F=(A-BC, C→AD),p=(ABC,AD)
(4)F=(A→B,B→C,C-D,p=(AB,ACD)
(5)F=(A→B,B→C,C→D,p=(AB,AD,CD)
试对上述5种情况分别回答下列问题:
a、确定R的关键码。
b、是否是无损分解?
c、是否保持FD集?
d、确定p中每一模式的范式级别。

解:(1)

a、R的关键码为BD。
b、p不是无损分解。
c、p保持FD集F。
d、p中每一模式已达到BCNF级别。
(2)

a、R有两个关键码:AB和BC。
b、p是无损分解。
c、因为acD(F)=(C→A,C→D),Tgc(F)=中(没有非平凡的FD),所以p不保持FD,丢失了AB→C。
d、p中两模式均已达到BCNF级别。
(3)

a、R有两个关键码:A和C。
b、p是无损分解。
c、因为TABc(F)=(A→BC,C→A),TD(F)=(A→D),所以p保持FD。
d、在模式ABC中,关键码是A或BC,属性全是主属性,但有传递依赖(A→BC,BC→A),因此模式ABC是3NF,但不是BCNF,而模式AD显然已是BCNF。
(4)

a、R的关键码为A。
b、p是无损分解。
c、因为Tab(F)=(A→B,TacD(F)=(A→C,C→D),从这两个依赖集推不出原来的B→C,因此,不保持FD,丢失了B→C。
d、模式AB是BCNF,模式ACD不是3NF,只达到2NF级别。
(5)

a、R的关键码为A。
b、p不是无损分解。
c、因为TaB(F)=(A→B,tap(F)=(A→D),Tco(F)=(C→D),从这3个依赖集不能推理得到原来的B→C,因此p不保持FD,丢失了B→C。
d、p中每个模式均是BCNF级别。

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

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

相关文章

CST2024的License服务成功启动,仍报错——“The desired daemon is down...”,适用于任何版本!基础设置遗漏!

CST2024的License服务成功启动,仍报错——“The desired daemon is down…”,适用于任何版本!基础设置遗漏! CST2024的License服务成功启动后报错 若不能成功启动License服务,有可能是你的计算机名称带中文&#xff…

融云 CEO 董晗荣获 51CTO 「2023 年度科技影响力人物奖」

(👆点击获取《社交泛娱乐出海作战地图》) 1 月 5 日,由知名 IT 技术媒体 51CTO 主办的第十八届“中国企业年终评选”正式揭晓榜单,融云 CEO 董晗荣获“2023 年度科技影响力人物奖”。关注【融云全球互联网通信云】了解…

【Android Studio】APP练手小项目——切换图片APP

本项目效果: 前言:本项目最终实现生成一个安卓APP软件,点击按钮可实现按钮切换图片。项目包含页面布局、功能实现的逻辑代码以及设置APP图标LOGO和自定义APP名称。 关于Android Studio的下载与安装见我的博文:Android Studio 最新…

蓝牙信标定位原理

定位原理:蓝牙信标的定位原理是基于RSSI蓝牙信号强度来做定位的。 根据应用场景不同,通过RSSI定位原理可分为两种定位方式 一、存在性定位 这种方式通常要求所需定位的区域安装一个蓝牙信标即可,手持终端扫描蓝牙信标信号,扫描…

huggingface下载太慢的问题

解决问题:huggingface网站模型文件太大,下载太慢 方式: huggingface镜像站网址 使用方法3的python脚本文件内容 import os# 下载模型 os.system(huggingface-cli download --resume-download THUDM/chatglm2-6b --local-dir /home/bennie…

Linux【C编程】 信号以及信号的处理方式

文章目录 1.什么是信号?1.1信号是内容受限的一种异步通信机制1.2信号由谁发出的?1.3信号由谁处理,如何处理 2.常见的信号3.进程对信号的处理3.1用signal函数处理SIGINT信号3.2使用sigaction 函数 4.alarm 和pause函数4.1 alarm函数详解4.2 pa…

vue element plus 安装

环境支持# Element Plus 可以在支持 ES2018 和 ResizeObserver 的浏览器上运行。 如果您确实需要支持旧版本的浏览器,请自行添加 Babel 和相应的 Polyfill 。 由于 Vue 3 不再支持 IE11,Element Plus 也不再支持 IE 浏览器。 Edge ≥ 79Firefox ≥ 78C…

用通俗易懂的方式讲解:大模型 RAG 在 LangChain 中的应用实战

Retrieval-Augmented Generation(RAG)是一种强大的技术,能够提高大型语言模型(LLM)的性能,使其能够从外部知识源中检索信息以生成更准确、具有上下文的回答。 本文将详细介绍 RAG 在 LangChain 中的应用&a…

愤怒的小红帽

欢迎来到程序小院 愤怒的小红帽 玩法:帮助小红帽安全送达老奶奶家,当狼进入靶子以后鼠标对准靶子, 点击鼠标左键🏹,对应的狼就会被射死,然后继续往前冲,快去🏹吧^^。开始游戏https:…

Jmeter压缩包安装

JMeter安装及配置-Mac 本章要点 前置条件命令行安装压缩包安装 在Mac上安装对应的JMeter工具有两种方式:一种直接借助终端命令行brew进行安装;另外一种和Window电脑一样去JMeter官网下载压缩包安装。 JMeter不需要安装,但是JMeter作为java应用…

伺服电机:伺服电机的控制方式(脉冲控制)

脉冲控制是伺服系统最常见的一种控制方式,基本上每家的伺服驱动器都支持脉冲模式。脉冲模式一般用于轴比较少的场合(4轴及以下),轴数比较多的话就需要用总线来控制,毕竟伺服控制器的脉冲输入输出口的数量是有限的。 一…

Hive分区表实战 - 单分区字段

文章目录 一、实战概述二、实战步骤(一)创建图书数据库(二)创建国别分区的图书表(三)在本地创建数据文件(四)按分区加载数据1、加载中文书籍数据到countrycn分区2、加载英文书籍数据…

安全技能讲座 - 便携式灭火器 (Portable Fire Extinguishers )

【Transcript 】 火灾随时随地都可能发生,而且毫无征兆。如果您在家中或工作中遇到火灾,便携式灭火器可以帮助您保护自己,并有可能将火灾扼杀在摇篮中。本课程将向您介绍便携式灭火器、其工作原理和使用方法。成功完成本课程后,您…

字节跳动今年的校招薪资。。。

字节跳动校招情况分析 在写完了绝对顶流 华为 和近两年炙手可热的 比亚迪 的校招薪资之后,不少同学点名要看「字节跳动」。 确实,玩归玩,闹归闹,别拿字节开玩笑。 先来看看和公众号读者相关性较高的岗位校待遇: 研发算…

three.js实现电子围栏效果(纹理贴图)

three.js实现电子围栏效果&#xff08;纹理贴图&#xff09; 实现步骤 围栏的坐标坐标转换为几何体顶点&#xff0c;uv顶点坐标加载贴图&#xff0c;移动 图例 代码 <template><div class"app"><div ref"canvesRef" class"canvas-…

Linux的网络配置命令和网络设置实操

目录 一、网路命令 1.ifconfig 2.hostname 3.route 4.netstat 5.ss&#xff08;socket statistics&#xff09; 6.ping 7.nslookup 8.tcpdump 二、实操 1.单个网卡修改 2.双网卡配置 3.bond网卡绑定 一、网路命令 查看Linux基础的网络设置 网关route -nIP地址ifc…

算法与数据结构--最小生成树算法

一.应用的场景 类似于这种最小成本问题&#xff0c;实际上就是计算加权图把所有点连起来权重之和最小值的时候是怎么连接的。类似的问题还有最短耗时之类的问题。 二.最小生成树的定义 生成树&#xff1a; 图的生成树是它的一颗含有其所有顶点的无环连通子图。 【简单说就是所…

Java中的IO流

在Java中&#xff0c;I/O&#xff08;输入/输出&#xff09;流用于处理与输入和输出相关的操作。Java的I/O流按照数据处理的不同方式分为两大类&#xff1a;字节流和字符流。每个类别又分为输入流和输出流。以下是Java中常用的I/O流及其继承关系&#xff1a; 字节流&#xff0…

BERT Intro

继续NLP的学习&#xff0c;看完理论之后再看看实践&#xff0c;然后就可以上手去kaggle做那个入门的project了orz。 参考&#xff1a; 1810.04805.pdf (arxiv.org) BERT 论文逐段精读【论文精读】_哔哩哔哩_bilibili (强推!)2023李宏毅讲解大模型鼻祖BERT&#xff0c;一小时…

竞赛保研 基于深度学习的动物识别 - 卷积神经网络 机器视觉 图像识别

文章目录 0 前言1 背景2 算法原理2.1 动物识别方法概况2.2 常用的网络模型2.2.1 B-CNN2.2.2 SSD 3 SSD动物目标检测流程4 实现效果5 部分相关代码5.1 数据预处理5.2 构建卷积神经网络5.3 tensorflow计算图可视化5.4 网络模型训练5.5 对猫狗图像进行2分类 6 最后 0 前言 &#…