数据库作业题目.docx

上传人:b****6 文档编号:16181747 上传时间:2023-07-11 格式:DOCX 页数:17 大小:338.04KB
下载 相关 举报
数据库作业题目.docx_第1页
第1页 / 共17页
数据库作业题目.docx_第2页
第2页 / 共17页
数据库作业题目.docx_第3页
第3页 / 共17页
数据库作业题目.docx_第4页
第4页 / 共17页
数据库作业题目.docx_第5页
第5页 / 共17页
数据库作业题目.docx_第6页
第6页 / 共17页
数据库作业题目.docx_第7页
第7页 / 共17页
数据库作业题目.docx_第8页
第8页 / 共17页
数据库作业题目.docx_第9页
第9页 / 共17页
数据库作业题目.docx_第10页
第10页 / 共17页
数据库作业题目.docx_第11页
第11页 / 共17页
数据库作业题目.docx_第12页
第12页 / 共17页
数据库作业题目.docx_第13页
第13页 / 共17页
数据库作业题目.docx_第14页
第14页 / 共17页
数据库作业题目.docx_第15页
第15页 / 共17页
数据库作业题目.docx_第16页
第16页 / 共17页
数据库作业题目.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据库作业题目.docx

《数据库作业题目.docx》由会员分享,可在线阅读,更多相关《数据库作业题目.docx(17页珍藏版)》请在冰点文库上搜索。

数据库作业题目.docx

数据库作业题目

数据库作业题目

作业一:

ER设计

题目一:

用ER图可以表达下列哪些数据完整性约束,不能表达哪些约束?

能表达的给出ER图。

1.每门课选课人数不能低于10个,不能高于100个

答:

不能表达约束

2.

课程名是唯一的

 

3.不能供应不存在的零件

 

4.性别只能为男或女

答:

不能表达约束

5.

每个学生都必须得选课

 

6.学生可以参加多个社团,但所参加的社团的活动时间必须不同

答:

不能表达约束

7.学生可以参加多个项目,参加不同的项目其指导老师也不同

 

 

题目二:

解答以下问题

1.列举聚集、弱实体、细化/泛化的实用例子,并用ER图表示出来。

聚集:

客户签订合同与采购产品之间是聚集关系

弱实体:

下图中教科书属于弱实体

细化/泛化:

家俱与(桌子、椅子)属于细化/泛化关系

 

2.已知有如下关系模式:

E1(a1,a2,a3),E2(a3,a4),E3(a5,a6),E4(a3,a5,a7),其中带下划线的属性标识为所在关系模式的主码。

试画出相应的E-R图,使得可以从该E-R图推导出上述关系模式。

E-R图如下:

 

题目三:

考虑设计一个关系数据库,它要存储以下信息:

●教师有教工号、教工名、职称;项目有项目号、项目名称、项目类型、起始年份、截至时间、资助额;学生有学号、学生名、年龄、学位。

●学生分为本科生和研究生,老师按职称可以分为讲师、副教授、教授,副教授以上职称的可以作为研究生的导师。

●一个教工可以负责多个项目;每个项目只能有一个负责人;一个老师可以参与多个项目;一个本科生只能参与一个项目,一个研究生学生可以参与多个项目;一个项目可以有多个学生和老师参与;学生参与项目时必须(如果改为可以呢?

)有一个老师作为他的指导老师。

E-R图如下:

 

题目四:

下面是一张采购订单的票据,根据上面列出的信息,给出其实体联系模型。

 

作业二:

关系代数

题目一:

S(SNO,SNAME,STATUS,CITY)

P(PNO,PNAME,COLOR,WEIGHT,CITY)

J(JNO,JNAME,CITY)

SPJ(SNO,PNO,JNO,QTY)

S表示供应商,各属性依次为供应商号,供应商名,供应商状态值,供应商所在城市;

P表示零件,各属性依次为零件号,零件名,零件颜色,零件重量,零件存放的城市;

J表示工程,各属性依次为工程号,工程名,工程所在城市;

SPJ表示供货关系,各属性依次为供应商号,零件号,工程号,供货数量。

基于以上SPJ关系模式用关系代数表达查询:

1.求向北京的工程供应了红色零件的供应商姓名。

∏S.SNAME(σS.SNO=SPJ.SNO∧P.COLOR=’红色’∧J.CITY=’北京’(S×P×J×SPJ))

2.求只向北京的工程供应零件的供应商姓名。

∏S.SNAME(σS.SNO=SPJ.SNO∧J.CITY=’北京’(S×J×SPJ))

3.求至少供应了两种不同零件的供应商姓名。

∏S.SNAME(S⋈(σX.SNO=Y.SNO∧X.PNO≠Y.PNO(ρX(SPJ)×ρY(SPJ)))

4.求没有供应任何零件的供应商姓名。

∏S.SNAME(S⋈(∏S.SNO(S)-∏S.SNO(SPJ))

5.求供应了所有零件的供应商姓名。

∏S.SNAME(S⋈(∏SPJ.SNO,SPJ.PNO(SPJ)÷∏P.PNO(P)))

6.求供应了所有红色零件的供应商姓名。

∏S.SNAME(S⋈(∏SPJ.SNO,SPJ.PNO(SPJ)÷∏P.PNO(σP.COLOR=’红色’(P))))

7.求供应了s1号供应商所供应的所有零件的供应商的供应商号。

∏SNO,PNO(SPJ)÷∏PNO(σSNO=’s1’(SPJ))

8.求和s1号供应商所供应的零件完全相同的供应商的供应商号。

∏SNO(SPJ)-∏SNO(∏SNO(SPJ)×∏PNO(σSNO=’s1’(SPJ))-∏SNO,PNO(SPJ))-∏SNO(∏SNO,PNO(SPJ)-∏SNO(SPJ)×∏PNO(σSNO=’s1’(SPJ)))

题目二:

对于关系R(A,B,C),用关系代数来检验A是否取值唯一。

关系R≠ϕ并且R中元组{a,b,c}是唯一的,则:

σX.A=Y.A∧(X.B≠Y.B∧X.C≠Y.C)(ρX(R)×ρY(R))结果如果恒定为1,说明A的取值是唯一的。

 

作业三:

基本SQL

S(SNO,SNAME,STATUS,CITY)

P(PNO,PNAME,COLOR,WEIGHT,CITY)

J(JNO,JNAME,CITY)

SPJ(SNO,PNO,JNO,QTY)

S表示供应商,各属性依次为供应商号,供应商名,供应商状态值,供应商所在城市;

P表示零件,各属性依次为零件号,零件名,零件颜色,零件重量,零件存放的城市;

J表示工程,各属性依次为工程号,工程名,工程所在城市;

SPJ表示供货关系,各属性依次为供应商号,零件号,工程号,供货数量。

基于以上SPJ关系模式用SQL完成下面的操作:

1.求没有供应p1和p2两种零件的供应商姓名。

selectSNAME

fromS

wherenotexists(selectSPJ.SNO

fromSPJ

whereS.SNO=SPJ.SNOand(PNO=’p1’orPNO=’p2’)

2.列出所有供应商的信息,包括供应商姓名、所供应的零件名(没有供应零件的供应商也要列出,最后结果中不要出现重复元组)

selectdistinctSNAME,T1.PNAME

fromSrightouterjoin(selectSPJ.SNO,P.PNAME

fromSPJ,P

whereSPJ.PNO=P.PNO

)asT1onS.SNO=T1.SNO

3.求只向与自己位于不同城市的工程供应零件的供应商姓名。

selectdistinctT1.SNO,T1.SNAME

fromST1,SPJT2,JT3

whereT1.SNO=T2.SNOandT2.JNO=T3.JNOandT1.CITY=T3.CITY

except

selectdistinctT4.SNO,T4.SNAME

fromST4,SPJT5,JT6

whereT4.SNO=T5.SNOandT5.JNO=T6.JNOandT4.CITY=T6.CITY

4.求只向与自己位于相同城市的工程供应零件的供应商姓名。

selectdistinctT4.SNO,T4.SNAME

fromST4,SPJT5,JT6

whereT4.SNO=T5.SNOandT5.JNO=T6.JNOandT4.CITY=T6.CITY

except

selectdistinctT1.SNO,T1.SNAME

fromST1,SPJT2,JT3

whereT1.SNO=T2.SNOandT2.JNO=T3.JNOandT1.CITY!

=T3.CITY

5.求供应了所有零件的供应商姓名。

selectS.SNAME

fromS

wherenotexists(selectP.PNO

fromP

wherenotexists(select*

fromSPJ

whereSPJ.SNO=S.SNOandSPJ.PNO=P.PNO

6.求供应了所有红色零件的供应商姓名。

selectS.SNAME

fromS

wherenotexists(selectP.PNO

fromP

wherenotexists(select*

fromSPJ

whereSPJ.SNO=S.SNOandSPJ.PNO=P.PNO

andP.COLOR=’红’

7.列出每个城市的工程所使用的零件总的数量。

selectsum(J.QTY)

fromSPJ,J

whereSPJ.JNO=J.JNO

groupbyJ.CITY

8.按零件数量总和的降序列出每项工程所使用的每种红色零件的总的金额(工程可以向不同的供应商购买同一零件,总金额=单价*供货数量)。

selectJ.JNO,sum(SPJ.QTY)*J.PRICE

fromSPJ,J

whereSPJ.JNO=J.JNOandJ.COLOR=’红色’

groupbyJ.JNO

orderbysum(SPJ.QTY)

9.求供应零件数量最多的供应商姓名。

selectT1.SNAME

fromST1,(selectSPJ.SNO

fromSPJ

groupbySPJ.SNO

havingsum(SPJ.QTY)>=all(selectsum(T1.QTY)

fromSPJT1

groupbyT1.SNO)

)T2

whereT1.SNO=T2.SNO

10.求每个城市中供应零件数量最多的供应商姓名。

selectT3.SNAME,T2.MAXSUMQTY

from

(selectS.SNO,sum(SPJ.QTY)asSUMQTY

fromSPJ,S

whereSPJ.SNO=S.SNO

groupbyS.SNO)T1,

(selectmax(T4.SUMQTY)ASMAXSUMQTY

from

(selectS.CITY,S.SNO,sum(SPJ.QTY)asSUMQTY

fromSPJ,S

whereSPJ.SNO=S.SNO

groupbyS.CITY,S.SNO)T4

groupbyT4.CITY)T2,

ST3

whereT1.SNO=T3.SNOandT2.MAXSUMQTY=T1.SUMQTY

(或者使用with子句,Oracle9i版本后支持,sqlserver不支持)

withT1(CITY,SNO,SUMQTY)as

selectS.CITY,S.SNO,sum(SPJ.QTY)

fromSPJ,S

whereSPJ.SNO=S.SNO

groupbyS.CITY,S.SNO

withT2(MAXSUMQTY)as

selectmax(T1.SUMQTY)

fromT1

groupbyT1.CITY

selectT3.SNAME

fromT1,T2,ST3

whereT1.SNO=T3.SNOandT2.MAXSUMQTY=T1.SUMQTY

 

作业四:

关系规范化

题目一:

分别写出关系代数和SQL语句,验证关系R(ABC)上A→B和A→→B是否成立。

解:

验证A→B

关系代数:

如果σX.A=Y.A∧X.B≠Y.B(ρX(R)×ρY(R))结果如果恒定为0,则AB成立;否则不成立。

SQL验证:

createassertionAtoBcheck

(notexists

(selectA

fromR

groupbyA

havingcount(distinctB)>1

题目二:

R(ABCDE),F={AB→C,B→D,C→E,CE→B,AC→B}。

–给出其候选码

–判断范式级别

–分别给出保持无损连接和函数依赖的分解

答:

1.出现在左边的属性:

{A,B,C,E}

出现在右边的属性:

{B,C,D,E}

左部属性:

{A}

右部属性:

{D}

双部属性:

{B,C,E}

所有候选码为:

{AB,AC}

2.由于无集合属性,所以属于1NF;

由于有B→D,C→E,故存在非主属性对码的部分依赖,所以不属于2NF

3.先求F的最小覆盖

无冗余化:

检查AC→B,G=F-{AC→B}={AB→C,B→D,C→E,CE→B}

(AC)G+={A,C,E,B,D}B∈{A,C,E,B,D}=(AC)G+,所以可以从F删除依赖AC→B

题目三:

已知R(ABCD)的封闭属性集是Ф,{AB}和{ABCD},给出R的函数依赖集

题目四:

R(ABCDE),给出下面函数依赖集在S(ABCD)上的投影

F={AB→D,AC→E,BC→D,D→A,E→B}

解:

由AC→E,E→B得出AC→B

由AC→D,D→A得出AC→A属于平凡依赖

由BC→D,D→A得出BC→A

所以{BC→A,AC→B}为F在S(ABCD)上的投影

作业五:

数据库综合报告

报告一:

要求:

写一篇综述报告,可以是关于某项数据库实用技术的,也可以是数据库在所从事行业中的应用情况,或者是个人关于大数据产业的认知。

个人对大数据产业的认知

近两年最热门的技术话题就是“大数据”和“互联网+”,以前总以为大数据就是对数据库信息的深入挖掘,再加以利用。

最近在北京大学进修了数据库的课程,其中有一课主门讲大数据的。

课外我又查阅了互联网和图书,下了些功夫了解了一下大数据,使我对于大数据又有了新的认识。

最早提出大数据时代到来的是麦肯锡:

“数据,已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。

人们对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的到来。

”业界(IBM最早定义)将大数据的特征归纳为4个“V”(量Volume,多样Variety,价值Value,速Velocity),或者说特点有四个层面:

第一,数据体量巨大。

大数据的起始计量单位至少是P(1000个T)、E(100万个T)或Z(10亿个T);第二,数据类型繁多。

比如,网络日志、视频、图片、地理位置信息等等。

第三,价值密度低,商业价值高。

第四,处理速度快。

最后这一点也是和传统的数据挖掘技术有着本质的不同。

大数据的核心就是“数据挖掘”吗?

这也是我原来这么认为的。

大数据的核心在于预测,可以发发现很多依靠人的常识和常规信息处理手段无法发现的一些规律性,从而增加决策的科学性和准确性程度。

大规模数据放在一起,确实能达到这种效果。

可是,这些不是数据挖掘技术做的事情吗,为什么还要多此一举的加上一个“大”呢?

我的理解这个大,除了表示数据量很大之外,也表示这是一个经过整合以后形成的一个庞然大物。

”整合“是大数据的命脉,数据不整合在一起,即使再多,也无法做关联分析。

但是,”整合“真的就知识为了给数据挖掘提供原料吗?

如果整个社会的数据整合在了一起,这就是意味着所有的机构和个人可以通过这个数据平台互联互通,整个人类社会的运行规则将发生天翻地覆的变化。

政府可以清晰地知道管理对象的所有细节信息,现在的层层审批都可以不需要,很多社会问题刚一露头就会被发现,从而消除在萌芽状态;公民也可以监督政府运作的每一个细节,政府在民众面前基本裸体,也不敢玩太多的把戏,商家也可以了解顾客的细节需求,所以投其所好,消费者也可以了解商家的细节信息,从而避免上当受骗。

总之,真正的”大数据时代“是一个数据驱动一切的社会,也是一个所有人都在聚光灯下的社会,因此人类社会发展过程中由于信息的不对称导致的很多问题都可能得到部分地解决,。

“大数据时代”是人类生存方式将要发生巨大变革的时代,而不仅仅是一个会使用数据挖掘技术,实现信息资源二次利用的时代。

报告二:

数据库实践,自己设计表结构和查询,展示组合索引或覆盖索引对查询性能的提升。

根据我公司客户服务系统需求,设计了如下客户信息表结构,表名称(gerenkehu)

名称

代码

数据类型

必填项

注解

居民客户id

gr_id

varchar(20)

主键

TRUE

主键

集团统一编号

gr_jt_bh

varchar(20)

姓名

gr_xm

nvarchar(50)

索引

TRUE

性别

gr_xb_id

varchar(6)

TRUE

身份证号

gr_sfz

varchar(18)

索引

证件类型

gr_zjlx_id

varchar(6)

其他证件号

gr_zj_id

varchar(30)

地址

gr_dz

nvarchar(70)

索引

邮政编码

gr_yzbm

varchar(6)

家庭电话

gr_jtdh

varchar(20)

索引

手机

gr_sj

varchar(20)

索引

手机2

gr_sj2

varchar(20)

索引

华润项目增加

小灵通

gr_xiaolingtong

varchar(20)

索引

电子邮箱

gr_dzyx

varchar(60)

工作单位

gr_gzdw

nvarchar(60)

职务

gr_zw

varchar(20)

单位电话

gr_dwdh

varchar(20)

索引

开户状态

isactive

char

(1)

Y已挂表,N开户未挂表,D销户

客户类型

gr_khlx

varchar

(1)

TRUE

居民客户分类

gr_khfl

varchar(6)

外键

索引

TRUE

低保户标志)

gr_db_bz

Varchar

(1)

低保开始日期

gr_db_ksrq

datetime

低保结束日期

gr_db_jzrq

datetime

是否关注用户

gr_sfgz_fg

varchar

(1)

TRUE

个人关注级别

GR_GUANZHUJB

VARCHAR2(6)

客户信用等级

GR_XINYONG_DENGJI

VARCHAR2(6)

客户状态

gr_khzt_id

varchar(6)

外键

索引

TRUE

户主id

gr_hz_id

varchar(20)

外键

索引

户主姓名

gr_hz_xm

nvarchar(15)

索引

与户主的关系码

gr_yhzgx_cd

varchar(6)

工作单位id

gr_gzdw_id

varchar(20)

外键

索引

银行帐号

GR_YHZH

VARCHAR2(30)

华润项目增加

账户开户户名

GR_KHM

NVARCHAR2(30)

华润项目增加

账户开户行

GR_KHH

VARCHAR2(30)

华润项目增加

创建人

gr_cjr_id

varchar(10)

外键

TRUE

创建日期

gr_cjrq

datetime

TRUE

最后修改人

gr_zhxgr

varchar(10)

外键

TRUE

最后修改日期

gr_zhxgrq

datetime

TRUE

区分码

org_id

varchar(20)

外键

索引

TRUE

版本号

version

int

统计查询数据库中已在用燃气用户量的SQL:

selectcount(*)fromgerenkehuwhereisactive='Y';

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2