第二章作业【数据库原理】

简介: 第二章作业【数据库原理】

前言

以下内容源自数据库原理l

仅供学习交流使用

推荐

第二章作业

第2章第1题简答题

一. 简答题(共1题,100分)

  1. (简答题)定义并理解下列术语,说明它们之间的联系与区别:
    (1)域,笛卡尔积,关系,元组,属性;

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

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

1、域、笛卡尔积、关系、元组、属性:
(1)域:一组具有相同数据类型的值的集合。比如:实数集,集合中的为同一类型
(2)笛卡尔积:又称直积,不重复的所有域的所有取值的一个组合。给定一组域D1,D2,…,Dn,允许其中某些域是相同的。
                      D1,D2,…,Dn的笛卡尔积为:D1xD2x…xDn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}
(3)关系:D1xD2x…xDn的子集叫做在域D1,D2,…,Dn上的关系,表示为R(D1,D2,…,Dn)R为关系名,n为关系的目或度
(4)元组:二维表的行,笛卡尔积中的每一个元素
(5)属性:二维表的列,实物具有的某一特性。
2、主码、候选码、外码:
(1)主码:若一个关系有多个候选码,则选定一个为主码。
(2)候选码:可以唯一标识元组的某个属性值,可以有多个
(3)外码:设F是基本关系R的一个或一组属性,但不是关系R的码。如果F与基本关系S的主码Ks相对应,则称F是R的外码。
            基本关系R为参照关系,基本关系S为被参照关系
3、关系模式、关系、关系数据库:
(1)关系模式:是对关系的模式,是静态的、稳定的,是抽象的型。
(2)关系:笛卡尔积的子集,关系模式在某一时刻的状态或内容,是动态的、不断变化的,是具体的值。
(3)关系数据库:在一个给定的应用领域中,所有关系的集合构成一个关系数据库。

第2章第2题简答题

一. 简答题(共1题,100分)

  1. (简答题)试述关系模型的完整性规则。在参照完整性中,什么情况下外码属性的值可以为空值?
1、实体完整性规则:主属性不能为空
2、参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应,
则对于R中每个元组在F上的值必须为:或者取空值,或者为S中某个元组的主码值。

第2章第3题关系代数

一. 其它(共1题,100分)

  1. (其它)
    设有一个SPJ数据库,包括S、P、J、SPJ 4个关系模式。
    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)、工程项目号(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某个工程项目的数量为QTY。


今有若干数据如下:



试用关系代数表达式表示下列查询操作。


(1)求供应工程J1零件的供应商编号SNO。


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


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


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


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

(1) Π SNO(δJNO=‘J1’(Π SNO,JNO(SPJ)))

(2) Π SNO(δPNO=‘P1’(Π SNO,PNO(δJNO=‘J1’(SPJ))))

(3) Π SNO(δCOLOR=‘红’((Π PNO,COLOR(P )∞Π SNO,PNO(δJNO=‘J1’(SPJ)))

(4)Π JNO(SPJ)-Π JNO(Π SNO(δCITY=‘天津’))∞)Π PNOδCOLOR=‘红’(P )∞Π SNO,PNO,JNO(SPJ)

(5)Π JNO,PNO(SPJ)÷Π PNO(δSNO=‘S1’(SPJ))

最后

这篇博客能写好的原因是:站在巨人的肩膀上

这篇博客要写好的目的是:做别人的肩膀

开源:为爱发电

学习:为我而行

相关文章
|
4月前
|
算法 关系型数据库 MySQL
【MySQL 解析】数据库的乐观锁和悲观锁实现原理
【1月更文挑战第11天】【MySQL 解析】数据库的乐观锁和悲观锁实现原理
|
4月前
|
NoSQL 中间件 API
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)(下)
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)
84 2
|
4月前
|
NoSQL Java API
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)(上)
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)
74 0
|
3天前
|
存储 算法 搜索推荐
矢量数据库基础:概念、原理与应用场景
【4月更文挑战第30天】矢量数据库,处理高维向量数据的工具,应用于GIS、推荐系统、图像搜索及语义搜索。核心原理是将原始数据嵌入到高维空间,通过索引算法优化搜索性能。现代深度学习模型如Word2Vec提升向量表示准确性,KD-Tree、LSH等算法加速相似性搜索。随着技术发展,矢量数据库在数据科学领域的重要性日益增强。
|
10天前
|
存储 SQL 数据库
数据库库表结构设计:原理、实例与最佳实践
数据库库表结构设计:原理、实例与最佳实践
25 0
|
11天前
|
C#
【自考】之数据库系统原理
【自考】之数据库系统原理
15 0
|
2月前
|
缓存 Java 数据库连接
mybatis 数据库缓存的原理
MyBatis 是一个流行的 Java 持久层框架,它封装了 JDBC,使数据库交互变得更简单、直观。MyBatis 支持两级缓存:一级缓存(Local Cache)和二级缓存(Global Cache),通过这两级缓存可以有效地减少数据库的访问次数,提高应用性能。
282 1
|
3月前
|
存储 关系型数据库 数据库
数据库索引的原理,为什么要用 B+树,为什么不用二叉树?
数据库索引的原理,为什么要用 B+树,为什么不用二叉树?
|
3月前
|
NoSQL Java API
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)
301 0
|
4月前
|
存储 传感器 数据挖掘
请解释一下时序数据库的工作原理,并提供一个使用时序数据库的实际应用场景。
请解释一下时序数据库的工作原理,并提供一个使用时序数据库的实际应用场景。
185 0