数据库三级填空+应用(2)

sysadmin、dbcreator

数据是面向主题的(2)、集成的、非易失的、随时间不断变化的数据集合,

  1. 数据字典

  1. 【答案】完整性约束
    数据模型成分

33【解析】顺序图主要用于描述系统内对象之间的消息发送和接收序列。

34如果把舍弃的元组也保存在结果关系中,而在其它属性上填空值(Null),那么这种连接就叫外连接

41【答案】隔离
【解析】产生上述三类数据的不一致性主要原因就是并发操作破坏了事务的隔离性

组件图提供系统的物理视图

COUNT(DISTINCT 选课表.学号)
GROUP BY 所在系名

自连接是SQL语句中经常要用的连接方式

UNDO

日志

46

设某教学管理系统,其查询模块需要提供如下功能:
Ⅰ.查询系信息,列出各系编号、系名和系办公电话;
Ⅱ.查询某系教师的信息,列出教师号、教师名、工资和聘用日期;
Ⅲ.查询某教师讲授的课程信息,列出课程号、课程名和学分;
Ⅳ.查询讲授某门课程的教师信息,列出教师名和职称;
Ⅴ.查询某门课程的先修课程信息,列出先修课程号和先修课程名。
系统有如下业务规则:
Ⅰ.一个系可聘用多名教师,一名教师只能受聘于一个系;
Ⅱ.一名教师可讲授多门课程,一门课程可由多名教师讲授;
Ⅲ.一门课程可以有多门先修课程,也可以没有先修课程。


(1)请根据以上查询功能与业务规则,用ER图描述该系统的概念模型。(5分)
(2)将ER图转换为满足3NF的关系模式,并说明每个关系模式的主码和外码。(5分)


(2)【参考答案】
系(系编号,系名,系办公室电话),无外码
教师(教师号,教师名,职称,工资,聘用日期,系编号),外码:系编号
先修课程(先修课程号,先修课程名)
课程(课程号,课程名,学分,先修课程号),外码:先修课程号
讲授(教师号,课程号)


因为转换过来的关系模式中,不存在属性依赖于其他非主属性,因此对转换的结果不需要优化。
【解题思路】
在将ER图向关系模式转换时规则如下:
①1:1(一对一)联系。
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由两个实体中的任意一个键构成。
方法二:联系与一端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
②1:m(一对多)联系。
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由m端实体的键组成。
方法二:与m端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
③m:n(多对多)联系转换成新的独立的模式,模式的属性由联系本身的属性及两个实体的键构成,主键由两端实体的键组合而成
满足3NF,则必须满足关系模式中每一个非主属性既不部分依赖于码也不传递依赖于码

48

设某全国性的运输企业建立了大型OLTP系统,并在该系统之上建立了数据仓库。OLTP系统和数据仓库中有如下数据表:
运输明细表(运输单ID,发送站ID,终到站ID,货物ID,货物重量,运输价格,发货日期)
汇总表1(发送站ID,终到站ID,货物ID,发货日期,总重,总运价)
汇总表2(发送站ID,终到地区ID,货物ID,发货日期,总重,总运价)
汇总表3(发送站ID,终到站ID,货物ID,发货月份,总重,总运价)
汇总表4(发送地区ID,终到地区ID,货物类别ID,发货日期,总重,总运价)
该企业管理的货运站约有100个,货物约有500种共10类,各汇总表都建有主码,且各表有合理的维护策略,在每次维护后数据能保持一致。设有视图V,该视图的访问频率很高,其查询结果模式为(发送地区ID,终到站ID,发货月份,总重,总运价),该视图现以汇总表1为计算数据源。经监控发现,汇总表1的被访问频率过高,导致系统整体性能下降,而其它汇总表被访问频率较低。在不增加汇总表和索引的情况下,请给出一个改善系统服务性能的优化方案,并简要说明理由。

【参考答案】
由于汇总表1和视图的模式访问频率都很高,而且视图的数据源来自汇总表1,又因为其他汇总表的访问率较低,所以只需要将视图的数据源绑定为汇总表3,因为汇总表3也可以满足视图的输出模式。这样不仅提升了汇总表3的数据访问率,而且降低了汇总表1的数据访问率,系统性能和服务性能得到了很大的优化。又因为货物约有500种,共10类,可以再建立一个视图绑定数据源为汇总表4,这样就可以充分利用汇总表4的数据信息,从而可以进一步完善系统性能的优化

建表时没有设置主键,也没有说明外键。但不会影响此查询语句的执行效率

完整性约束条件

"选课"表的"选课时间"列上建立了索引,从而能够提高执行效率。经常出现在Where子句中的字段,特别是大表的字段,应该建立索引。索引的作用就类似于书的目录,即会按照章节的顺序排列。因此如果在一本数百页的书里面查找某个章节位置的时候,就可以只扫描书的目录。扫描的范围缩了n倍,查询的效率自然就会提高。另外,在SQL Server内存够用的情况下,索引会被放到内存中,在内存中查找自然又会提高效率,所以必须合理利用索引。

根据WHERE条件后的字段(only)对表建立索引对于提高查询效率是有帮助的。

CREATE UNIQUE CLUSTERED INDEX Idx1 ON T(c2,c1)

IDENTITY作约束性定义,使C1可以成为标识列。

sysadmin

三级加锁

完全转储、差量转储和增量转储

数据是面向主题的、集成的、非易失的、随时间不断变化的数据集合,

应用1.5

  1. 【参考答案】
    教师(教师号,教师名,上级领导号,职称名)
    主码:教师号;外码:上级领导号、职称名
    职称(职称名,工资)
    主码:职称名
    课程(课程号,课程名,学分,教材号,任课教师号)
    主码:课程号;外码:教材号,任课教师号
    教材(教材号,教材名,出版社)
    主码:教材号;外码:无
    【解题思路】
    考虑到其有进一步描述的特性,所以把职称作为一个关系而不是教师的一个属性,而且教师号、职称、工资之间存在传递依赖,不满足3NF。
     
后触发器?

在SQL Server 2008中,设某数据库中有商品表(商品号,商品名,进货价格),商品号为主码;销售表(商品号,销售时间,销售数量,销售价格,本次利润),商品号和销售时间为主码,销售价格为本次销售商品的单价。现要求每当在销售表中插入前4列数据时(假设一次只插入一行数据),系统自动计算本次销售产生的利润,并将该利润赋给销售表的第5列"本次利润"。请编写实现上述功能的后触发型触发器代码。(10分)

CREATE TRIGGER calcu_product
AFTER INSERT ON 销售表
FOR EACH ROW
AS BEGIN
DECLARE @PurchasePrise float   /*对应商品的进价的参数*/
SELECT @PurchasePrise=进货价格 FROM 商品表 WHERE 商品号=new.商品号 
UPDATE 销售表 SET 本次利润=new.销售数量*(new.销售价格-@PurchasePrise <mailto:new.销售价格-@PurchasePrise>
 WHERE 商品号=new.商品号AND 销售时间=new.销售时间 
/*因为是行级触发器,所以可以使用更新后的新值,用new*/ 
END

触发器的创建格式:
    CREATE TRIGGER [Schema-name.]trigger-name
ON{table|view}
    {FOR|AFTER|INSTEAD OF}
    {[INSERT][,][UPDATE][,][DELETE]}
    AS{Sql-statement}
   [;]
对应于本题中,触发事件为在销售表中插入前四列,条件为无条件执行,触发体动作为计算本次利润并插入表中。

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

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

相关文章

超详细docker部署搭建私有仓库harbor

一、安装docker 确保你的服务器上已经安装了 Docker 如果没有安装&#xff0c;按以下方法安装 yum install -y yum-utils yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install docker-ce docker-ce-cli containerd.io 启动d…

541. 反转字符串 II

541. 反转字符串 IIhttps://leetcode.cn/problems/reverse-string-ii/ 给定一个字符串 s 和一个整数 k&#xff0c;从字符串开头算起&#xff0c;每计数至 2k 个字符&#xff0c;就反转这 2k 字符中的前 k 个字符。 如果剩余字符少于 k 个&#xff0c;则将剩余字符全部反转。…

力扣HOT100之普通数组:53. 最大子数组和

这道题目我用贪心做的&#xff0c;感觉用贪心的思路比较简单&#xff0c;以后要是面试碰到这道题就直接用贪心好了&#xff0c;这道题用贪心的核心思想就是不断将数组元素i加入总和sum&#xff0c;如果sum比当前维护的最大值result更大&#xff0c;说明当前遍历到的i是正数&…

muduo库的思路梳理

前言 对于muduo库源码的剖析我发现还是有些混乱的&#xff0c;所以这里再次梳理一下muduo网络库争取可以简单明了 首先对于muduo库来说&#xff0c;不能想的得太过于复杂&#xff0c;它无非就是一个线程池加上epoll组成的网络库 这里我们从用的角度出发理解muoduo网络库 #inc…

【C语言系列】数据在内存中存储

数据在内存中存储 一、整数在内存中的存储二、大小端字节序和字节序判断2.1什么是大小端&#xff1f;2.2练习2.2.1练习12.2.2练习22.2.3练习32.2.4练习42.2.5练习52.2.6练习6 三、浮点数在内存中的存储3.1练习3.2浮点数的存储3.2.1 浮点数存的过程3.2.2 浮点数取的过程 3.3题目…

C++学习之网盘项目单例模式

目录 1.知识点概述 2.单例介绍 3.单例饿汉模式 4.饿汉模式四个版本 5.单例类的使用 6.关于token的作用和存储 7.样式表使用方法 8.qss文件中选择器介绍 9.qss文件样式讲解和测试 10.qss美化登录界面补充 11.QHTTPMULTIPART类的使用 12.文件上传协议 13.文件上传协议…

多模态自动驾驶混合渲染HRMAD:将NeRF和3DGS进行感知验证和端到端AD测试

基于3DGS和NeRF的三维重建技术在过去的一年中取得了快速的进步&#xff0c;动态模型也变得越来越普遍&#xff0c;然而这些模型仅限于处理原始轨迹域内的对象。 HRMAD作为一种混合方案&#xff0c;将传统的基于网格的动态三维神经重建和物理渲染优势结合&#xff0c;支持在任意…

质检LIMS系统在食品生产加工企业的应用 如何保证食品生产企业的安全

在食品生产加工领域&#xff0c;质量安全是贯穿全产业链的生命线。随着《食品安全法》对全过程追溯要求的深化&#xff0c;传统实验室管理模式已难以满足高效、精准的质量管控需求。质检实验室信息管理系统&#xff08;LIMS&#xff09;作为数字化升级的核心工具&#xff0c;正…

树莓派超全系列文档--(8)RaspberryOS实用程序

RaspberryOS实用程序 实用程序kmsprintvclogvcgencmdvcosversionget_throttledmeasure_tempmeasure_clock [clock]measure_volts [block]otp_dumpget_config [configuration item|int|str]get_mem typecodec_enabled [type]mem_oommem_reloc_statsread_ring_osc 文章来源&#…

解锁DeepSeek潜能:Docker+Ollama打造本地大模型部署新范式

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《深度探秘&#xff1a;AI界的007》 &#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、什么是Docker 2、什么是Ollama 二、准备工作 1、操…

文件上传绕过的小点总结(6)

14.文件上传&#xff08;文件包含漏洞&#xff09;二次渲染 很多服务器为了防止代码嵌入图片&#xff0c;通常会将上传的图片进行重新生成处理&#xff0c;包括文件格式转换等等&#xff0c;嵌入的恶意代码很容易被改掉。于是产生了二次渲染&#xff0c;二次渲染的原理就是找到…

x-cmd install | Wuzz - Web 开发与安全测试利器,交互式 HTTP 工具

目录 安装配置快捷键上下文相关搜索待办事项 在 Web 开发和安全测试中&#xff0c;我们经常需要检查和修改 HTTP 请求。浏览器自带的开发者工具虽然好用&#xff0c;但复制出来的 cURL 命令冗长且难以编辑。今天要介绍的是 Wuzz&#xff0c;一款交互式命令行 HTTP 工具&#xf…

python --face_recognition(人脸识别,检测,特征提取,绘制鼻子,眼睛,嘴巴,眉毛)/活体检测

dlib 安装方法 之前博文 https://blog.csdn.net/weixin_44634704/article/details/141332644 环境: python3.8 opencv-python4.11.0.86 face_recognition1.3.0 dlib19.24.6人脸检测 import cv2 import face_recognition# 读取人脸图片 img cv2.imread(r"C:\Users\123\…

搭建k8s集群的可观测体系(log和metric)(已踩完坑)

Loki是日志聚合系统,属于云原生技术,由Grafana Labs开发。它专注于轻量级和高效的日志管理,特别是适合Kubernetes环境。而Prometheus-operator则是用来管理Prometheus监控系统的,简化部署和配置,处理监控数据,尤其是指标(metrics)的收集和告警。 本片文档踩坑结束,使用…

Mybatis配置文件解析(详细)

引言 在了解Mybatis如何帮助客户进行数据的存取后&#xff0c;便对Mybatis的配置文件起了兴趣&#xff0c;在查阅官方文档后&#xff0c;总结了平时能用到的配置&#xff0c;希望能对大家有帮助 1.核心配置文件 主要是指Mybatis-config.xml中 其包含了会深深影响Mybatis行为…

技术迭代、流量困境与营销突破:基于开源AI大模型与S2B2C模式的创新路径研究

摘要&#xff1a;在技术指数级迭代与流量红利消退的双重背景下&#xff0c;营销领域面临边际效应递减与竞争升级的双重挑战。本文基于"开源AI大模型""AI智能名片""S2B2C商城""小程序源码"等创新工具&#xff0c;探讨营销范式转型的路径…

针对stm32F103C8t6芯片调节USB串口的经验

1、首先这是自己手搓的板子,对于之前一直没有了解过USB这方面,则这个针对USB部分没有设计上拉电阻,造成不管怎么调节PC端都没有反应。 图一 这个没有添加1.5K电阻 这个D+位置应该再接一个1.5KR的电阻如图2所示 图2 这样调节的话PC端就可以识别到USB串口,但是这是串口还是会…

数据库和安装配置MySQL笔记(2)

1. 什么是数据库&#xff1f; 数据库&#xff08;Database&#xff09;是按照数据结构来组织、存储和管理数据的仓库。它通过系统化的方法&#xff0c;帮助用户高效地存储、检索和管理数据。 2. 常见数据库类型 关系型数据库&#xff08;如 MySQL、PostgreSQL、Oracle&#…

mysql增、删、改和单表查询多表查询

一、四大名著表t_hero的相关操作&#xff1a; 1.进入并创建db_ck数据库&#xff1a; create database if not exists db_ck; show databases; use db_ck;2.创建四大名著表t_hero并且插入一些数据&#xff1a; 创建t_hero表&#xff1a; create table t_hero ( id int, hero…

springboot整合couchbase(集群)

springboot整合couchbase 1、Couchbase1.1、介绍1.2、Bucket1.3、Couchbase SDK 2、(key,value)写入couchbase集群2.1、总体图2.2、依赖2.3、CouchbaseConfig 配置文件2.4、代码使用 1、Couchbase 1.1、介绍 1.2、Bucket 在 Couchbase 中&#xff0c;bucket 是一个重要的概念…