数据库作业第三章Word下载.docx
《数据库作业第三章Word下载.docx》由会员分享,可在线阅读,更多相关《数据库作业第三章Word下载.docx(10页珍藏版)》请在冰点文库上搜索。
![数据库作业第三章Word下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/4/2654bf5d-e7de-45b9-ab96-05d84762333f/2654bf5d-e7de-45b9-ab96-05d84762333f1.gif)
1•错误信息的管理上:
约束与触发器在遇到问题时都可以返回给用户一定的错误信息。
但
是,触发器可以返回数据库管理员自定义的错误信息,而且还可以实现较为复杂的逻辑控制,而约束只能够通过标准化的系统错误信息来传递错误消息;
2•性能上的差异分析:
从性能上来说,约束的执行性能都要高一点。
虽然约束的执行性能比较高,但是其向用户提供的错误信息确实非常有限的。
3.管理维护的工作量:
由于约束基本上都是数据库现成的解决方案。
无论是索引约束还是
外键约束,又或者是check约束。
往往在数据库系统中已经有了现成的解决方案。
数据库管理员通过直接引用这些解决方案即可以实现特定的功能,而不用再费力的编写触发器来实现。
而触发器中系统没有现成的可以引用,而都需要数据库管理员通过实际清理来进行编写。
6.关系代数的基本操作符?
笛卡尔乘积最大的作用是什么?
关系代数的基本操作符:
SELECTION(选择)、PROJECTION(投影)、UNION(并或称联合)、INTERSECTION(交八DIFFERENCE(差)、CROSS-PRODUCT(积)。
笛卡尔操作的最大作用是把任意两个不相关的表联接起来。
7.为什么说在实际查询中自然连接是用得比较多的?
自然连接可以从两个关系实例的笛卡尔乘积中选出同时满足一个或多个条件等式的行,每个条件等式中的列名相同。
同时,在结果模式中重复的字段只有一个。
8.关系代数中对结果有重复元组时,如何处理?
对关系代数中对结果有重复元组时,将去掉重复元组。
9.连接的分类?
条件连接(ConditionJoin):
加入连接条件,对两个关系实施连接;
等连接(EquiJoin):
是条件连接的特例。
要求连接条件由等式组成;
自然连接(NaturalJoin):
是等连接的特例。
要求等式中涉及的字段名必须相等;
外连接(OuterJoin):
是涉及有空值的自然连接
.单项选择题
1.(③)不是关系代数的基本操作
①Selection
2.(③)用唯一
②Projection
限制来约束。
③Join
④Intersection
①主键
②外键
③候选键
④简单键
3.(②)与“列
”不同义。
①字段
②元组
③成员
④属性
三.判断题(正确打"
,错误打X)
1.(“)关系代数中的改名操作既可用于改名也可用于存放临时关系模式结果
2.(X)对主表,插入操作可能会违背参照完整性限制,但删除和更新不会。
3.(X)等连接是自然连接的特例.
4.(“)关系代数是与关系模型有关的查询语言。
5.(“)外连接可能涉及有空值。
四.设有如下图所示三个关系实例X、丫和Z,请分别求出下列各表达式的值
(1)CA=al(YXZ)
(2)
Y'
-Z
(1)CA=al(YXZ)
{Vb1,c2,a1,c1>
<
b1,c2,a1,c2>
vb2,c1,a1,c1>
vb2,c1,a1,c2>
vb1,c1,a1,c1>
vb1
c1,a1,c2>
b1,c3,a1,c1>
b1,c3,a1,c2>
}
(2)丫丨-Z
C
A
B
cl
al
b2
bl
c2
c3
a2
c4
a3
null
(3)X^yX
Z
五•一个电影资料库有四个实体“电影”
“演员”,“导演”,“电影公司”。
“电影”的属性有电
影编号,电影名,电影类型,对白语言;
“演员”的属性有演员工作证号,姓名,出生年,性别;
电影公司”的属性有公司名称,所在
“导演”的属性有导演工作证号,姓名,出生年,性别;
国家
这些实体间的联系及它们的属性有:
演员出演电影,为多对多联系,该联系含角色属性;
导演执导电影,每部电影只由一个导演执导;
演员和导演属于电影公司;
电影公司出品电影,有出品年份属性。
1)请画出ER图,要求标出实体的主键、联系的约束类型和键约束。
2)将此ER图转换为关系模型,要求标出各关系的主键,如果存在的话还应指明其候选键和外键。
3)请用关系代数表达式和SQL分别表达下列查询
1查询1957年之前出生的男演员的姓名。
2查询2000年环球公司出品的电影的名字和导演姓名。
3查询张一导演所导演的影片中的主角演员姓名。
2)
演员(演员工作证号,姓名,出生年,性别)演员工作证号为主健;
导演(导演工作证号,姓名,出生年,性别)导演工作证号为主健;
电影公司(公司名称,所在国家)电影公司为主健;
电影(电影编号,电影名,电影类型,对白语言,导演工作证号),电影编号为主键,导演工作证号为外键,电影名为候选键;
出演(演员工作证号,电影编号,角色)(演员工作证号,电影编号)为主健,演员工作证号和电影编号各为外键;
出品(电影编号,公司名称,出品年份)(电影编号,公司名称)为主健,电影编号和公司名称各为外键;
属于a(公司名称,演员工作证号)(公司名称,演员工作证号)为主健,公司名称和演员工作证号各为外键;
属于b(公司名称,导演工作证号)(公司名称,导演工作证号)为主健,公司名称,导演工作证号各为外键。
3[①①出生年<
1957(演员)门唯别=男(演员)
SELECT*FROM演员WHERE出生年<
1957
INTERSECT
SELECT*FROMWHERE性别=男
②p(Temp,o•出品年份=2000(出品)Gc公司名称=环球公司(出品))
n电影名,姓名(Temp1'
电影二导演)
SELECT电影名
FROM出品,电影
WHERE出品.出品年份=‘2000'
AND出品.公司名称=环球公司AND出品.电影编号=电影.
电影编号
SELECT姓名
FROM出品,电影,导演
AND出品.公司名称=环球公司AND出品.电影编号=电影.电影编号AND导演.导演工作证号=电影.导演工作证号
③n姓名(o姓名=张一(导演)-电影、*出演「•演员)
SELECCT姓名
FROM导演,电影,出演,演员
WHERE导演.姓名='
张一’AND电影.导演工作证号=导演.导演工作证号AND出演.电影编号=演员•工作证号
六•某出版社管理系统有四个实体,即出版社(Publisher)、编辑(Editor)、作者(Author)和书籍(Book)。
“出版社”的属性有出版社编码(Pid)、出版社名称(Pname)、地址(Paddr)和电话(Ptel);
“编辑”的属性有编辑工号(Eid)、姓名(Ename)、性别(Egender)、出生日期;
“作者”的属性有作者编码(Aid)、姓名(Aname)、性别(Agender)、电话(Atel);
“书籍”的属性有国际图书分类号(Isbn)、书名(Bname)、单价(Bprice)。
作者“主编”(ZX)书籍,为1:
n联系;
编辑“校对”(JD)书籍,为1:
出版社“出版”(CB)书籍,为1:
“出版”的属性有出版日期(Pdate)。
(1)请画出概念数据模型的E-R图,要求标注联系的约束类型和键约束。
(2)将此E-R图表示的数据模型转换为关系模型,要求标出各关系的主键。
⑶给出创建“出版”关系(表)的SQL语句(需要创建相应的主键约束和外键约束)
⑷创建一个由地址中含有“成都市”的出版社出版的书籍的视图
(5)请分别用关系代数表达式和SQL查询语句表达下列查询:
1由出版社“XNJDP”出版的、由编辑名为“MTQ”校对的书籍的ISBN号和书名。
2由“男”性作者主编的、且由出版社“XNJDP”在2008.1.1至2008.12.31之间出
版的书籍的ISBN号和书名。
3由“女”性编辑校对的、且单价在20至40元之间的书籍的ISBN号和书名。
出版社Publisher(出版社编码Pid,出版社名称Pname,地址Paddr,电话Ptel,国际图书分类号
Isbn,出版日期Pdate)
编辑Editor(编辑工号Eid,姓名Ename,性别Egender,,出生日期,国际图书分类号Isbn)
作者Author(作者编码Aid,姓名Aname,性别Agender,电话Atel,国际图书分类号Isbn)
书籍Book(国际图书分类号Isbn,书名Bname,单价Bprice)。
3)CREATETABLEPublisher
(PidcharNOTNULL,
PnamecharNOTNULL,
PaddrcharNOTNULL,
PtelcharNOTNULL,
IsbncharNOTNULL,
PdetedatetimeNOTNULL,
CONSTREINTPid_KeyPRIMARYKEY(Pid),
CONSTRAINTIsbn_const
REFERENCESBook(Isbn)
ONDELETECASCADE
ONUPDATECASCADE)
4)CREATEVIEWBook(Isbn,Bname,Bprice)
AS
SELECTIsbn,Bname,Bprice
FROMPublisher,Book
WHEREPublisher.Paddr='
成都市'
ANDPublisher.lsbn=Book.Isbn5)
1TtIsbn,Bname(d°
name=XNJDP(PublishedoEname=MTQ(EdStOl)Book)
SELECTIsbn,Bname
FROMPublisher,Book,Editor
WHEREPublisher.Pname='
XNJDP'
ANDEditor.Ename='
MTQ'
ANG
Publisher.lsbn=Book.IsbnANDEditor.lsbn=Book.Isbn
2TtIsbn,Bname(oPname=XNJDP(Publisher)AoPdate<
2008.12.31(Publisher)Ao
XIM
Pdate>
2008.1.1(Publisher))oAgender='
男'
(Author)Book)
FROMPublisher,Book,Author
XNJDP'
ANDPublisher.Pdate<
2008.12.31ANDPublisher.
2008.1.1ANDAuthor.Agender='
ANGPublisher.Isbn=Book.IsbnAND
Author」sbn=Book」sbn
3nsbn,Bname(cEgender='
女'
(Editor)^(0Bprice>
20(Book)ABprice<
40(Book))
FROMBook,Editor
WHEREBook.Bprice>
20ANDBook.Bprice<
40ANDEditor.Egender='
ANG
Editor」sbn=Book」sbn