数据库SQL SERVER期末考试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
考试题型
一、选择题(本大题共20个小题,每个小题1分,共20分)
二、填空题(本大题共10个小题,每小题2分,共20分)
三、请使用SQL命令完成以下操作(本大题共5小题,每小题4分,共20分)
四、简答题(本大题共4小题,每小题5分,共20分)
五、设计题(本大题共2小题,每小题10分,共20分)
数据库原理与应用复习题
一、选择题
1、下面存在于服务器端的组件是:()。
A、服务管理器
B、企业管理器组件
C、查询分析器组件
D、导入导出组件
2、下面描述错误的是()。
A、每个数据文件中有且只有一个主数据文件。
B、日志文件可以存在于任意文件组中。
C、主数据文件默认为primary文件组。
D、文件组是为了更好的实现数据库文件组织。
3、SQLserver数据库文件有三类,其中主数据文件的后缀为():
A、.ndf
B、.ldf
C、.mdf
D、.idf
4、下面标志符不合法的是:()。
A、[mydelete]
B、_mybase
C、$money
D、trigger1
5、下列说法中正确的是:
A、SQL中局部变量可以不声明就使用
B、SQL中全局变量必须先声明再使用
C、SQL中所有变量都必须先声明后使用
D、SQL中只有局部变量先声明后使用;全局变量是由系统提供的用户不能自己建立。
6、下面字符串能与通配符表达式[ABC]%a进行匹配的是:()。
A、BCDEF
B、A_BCD
C、ABC_a
D、A%a
7、下列说法正确的是_______。
A、视图是观察数据的一种方法,只能基于基本表建立。
B、视图是虚表,观察到的数据是实际基本表中的数据。
C、索引查找法一定比表扫描法查询速度快。
D、索引的创建只和数据的存储有关系。
8、下列途径哪个不是实现值域完整性_______。
A、rule(规则)
B、primarykey
C、notnull
D、default
9、SQL Server 2005是一个( C )的数据库系统。
(A)网状型(B)层次型(C)关系型(D)以上都不是
10、SQL Server 2005采用的身份验证模式有( D )。
(A)仅Windows身份验证模式(B)仅SQL Server身份验证模式
(C)仅混合模式(D)Windows身份验证模式和混合模式
11、在SQL Server 2000中,当数据表被修改时,系统自动执行的数据库对象是( B )。
(A)存储过程(B)触发器(C)视图(D)其他数据库对象
12、SQL Server的字符型系统数据类型主要包括( B )。
A.Int、money、char
B.char、varchar、text
C.datetime、binary、int
D.char、varchar、int
13、要查询book表中所有书名中包含“计算机”的书籍情况,可用( B )语句。
(A)SELECT * FROM book WHERE book_name LIKE ‘计算机*’
(B)SELECT * FROM book WHERE book_name LIKE ‘计算机%’
(C)SELECT * FROM book WHERE book_name=‘计算机*’
(D)SELECT * FROM book WHERE book_name=‘计算机%’
14、SELECT语句中与HAVING子句通常同时使用的是( C )子句。
A.ORDERBY
B.WHERE
C.GROUP BY
D.无需配合
15、要删除mytable表中的myindex索引,可以使用( D )语句。
(A)DROP myindex (B)DROP mytable.myindex
(C)DROP INDEX myindex(D)DROP INDEX mytable.myindex
16、SQLServer提供的单行注释语句是使用()开始的一行内容。
A.“/*”
B.“--”
C.“{”
D.“/”
17、以下运算符中优先级最低的是()。
(A)+(加)(B)=(等于)(C)like (D)=(赋值)
18.SQL语言按照用途可以分为三类,下面选项中哪一种不是:()
(A)DML (B)DCL (C)DQL (D)DDL
19.在SELECT语句的WHERE子句的条件表达式中,可以匹配0个到多个字符的通配符是()
(A)* (B)% (C)- (D)?
20.下面不属于数据定义功能的SQL语句是:()
A.CREATE TABLE
B.CREATE CURSOR
C.UPDATE
D.ALTER TABLE
21.在SQL SERVER中局部变量前面的字符为:()
(A)* (B)# (C)@@ (D)@
22.对视图的描述错误的是:()
(A)是一张虚拟的表(B)在存储视图时存储的是视图的定义
(C)在存储视图时存储的是视图中的数据(D)可以像查询表一样来查询视图
23.在T-SQL语言中,若要修改某张表的结构,应该使用的修改关键字是()。
(A)ALTER (B)UPDATE (C)UPDAET (D)ALLTER
24、有如下代码,当代码中_[关键字]_分别为break、continue、return时,最后的print@n 输出的值为什么?
declare@nint
set@n=3
while@n〉0
begin
set@n=@n-1
if@n=1_[关键字]_
end
print @n(2分)
A:1,0,不输出 B:1,1,1 C:0,0,0 D:0,1,2
25、数据库系统由数据库、硬件和什么等组成?( )
A:操作系统 B:文件系统 C:编译系统 D:数据库管理系统
26、当同一个实体集内部的实体之间存在着一个1:N联系时,那么根据E-R模型转换成关系模型的规则,这个E-R模型转换成的关系模式个数是?( )
A:1个B:3个 C:5个 D:7个
27、所谓概念模型,指的是什么?( )
A:客观存在的事物及其相互联系 B:将信息世界中的信息数据化
C:实体模型在计算机中的数据化表示 D:现实世界到机器世界的一个中间层次,即信息世界
28、数据库系统不仅包括数据库本身,还要包括相应的硬件,软件和什么?( )
A:数据库管理系统 B:数据库应用系统 C:相关的计算机系统 D:各类相关人员29、数据库系统软件包括DBMS和什么?( )
A:数据库 B:高级语言 C:OS D:数据库应用系统和开发工具
30、下列四项中,不正确的提法是什么?( )
A:SQL语言是关系数据库的国际标准语言
B:SQL语言具有数据定义,查询,操纵和控制功能
C:SQL语言可以自动实现关系数据库的规范化
D:SQL语言称为结构查询语言
31、以下关于外码和相应的主码之间的关系,正确的是哪个?( )
A:外码并不一定要与相应的主码同名 B:外码一定要与相应的主码同名
C:外码一定要与相应的主码同名而且唯一 D:外码一定要与相应的主码同名,但并不一定唯一
32、公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是什么?( )
A:多对多 B:一对一 C:多对一 D:一对多
33、数据库设计的几个步骤是什么?( )
A:需求分析,概念结构设计,逻辑结构设计,物理结构设计,数据库实施,数据库运行和维护
B:需求分析,逻辑结构设计,物理结构设计.概念结构设计,数据库实施,数据库运行和维护
C:需求分析,逻辑结构设计,概念结构设计.物理结构设计,数据库实施,数据库运行和维护
D:需求分析,概念结构设计,物理结构设计,逻辑结构设计,数据库实施,数据库运行和维护
34、数据库系统是在什么的基础上发展起来的?( )
A:操作系统 B:文件系统 C:编译系统 D:数据库管理系统
35、SQL语言是什么语言?( )
A:层次数据库 B:网络数据库 C:关系数据库 D:非数据库
36、SQL中,聚合函数COUNT(列名)用于?( )
A:计算元组个数 B:计算属性的个数 C:对一列中的非空值计算个数 D:对一列中的非空值和空值计算个数
37、什么是长期存储在计算机内的有组织,可共享的数据集合?( )
A:数据库管理系统 B:数据库系统 C:数据库 D:文件组织
38、在关系数据模型中,通常可以把什么称为关系模式?( )
A:记录 B:记录类型 C:元组 D:元组集
39.下面关于关系的叙述,哪一条是不正确:
A.直观上说,关系就是二维表 B.二维表的任何两个列不能全同
C.二维表的任何两个行不能全同
D.二维表中允许有些分量取空值
40、SQL语言称为()。
A、结构化定义语言
B、结构化控制语言
C、结构化查询语言
D、结构化操纵语言。
41、当前应用最广泛的数据模型是()。
A、E-R模型
B、关系模型
C、网状模型
D、层次模型。
41、现有一个关系:借阅(书号、书名,库存数,读者号,借期,还期),假如同一本书允许一个读者多次借阅,但不能同时对一种书借多本。
则该关系模式的码是()。
A、书号
B、读者号
C、书号+读者号
D、书号+读者号+借期。
42.下列聚合函数中不忽略空值(null)的是[ ]
A.SUM(列名) B.MAX(列名) C.COUNT(*) D.AVG(列名)
43.在数据库设计中,将ER图转换成关系数据模型的过程属于[ ].
A.需求分析阶段 B.逻辑设计阶段 C.概念设计阶段 D.物理设计阶段
44.SQL中,下列涉及空值的操作,不正确的是[ ]
A.AGE IS NULL B.AGE IS NOT NULL C.AGE=NULL D.NOT(AGE IS NULL)
45、SQL语言中,条件“年龄BETWEEN 20 AND 30”表示年龄在20至30之间,且:
A.包括20岁和30岁
B.不包括20岁和30岁
C.包括20岁但不包括30岁
D.包括30岁但不包括20岁
46、把ER模型转换成关系模型的过程,属于数据库的:
A.需求分析
B.概念设计
C.逻辑设计
D.物理设计
47.在SQL语言中,属于DML的操作命令是:
A.CREATE B.GRANT C.UPDATE D.DROP
48.一辆汽车由多个零部件组成,且相同的零部件可适用于不同型号的汽车,则汽车实体集与零部件实体集之间的联系是
A.1:1 B.1:M C.M:1 D.M:N
49.概念设计的主要目标是产生数据库概念结构,该结构主要反映:
A.DBA管理信息的需求B.数据库的维护需求
C.应用程序开发的需求D.企业的信息需求
50.用下面的SQL语句建立一个基本表:CREATE TABLE Student(Sno CHAR(4) NOT NULL,Sname CHAR(8) NOT NULL,Sex CHAR(2),Age smallint),可以插入到表中的元组是:A.'5021','刘样',男,21 B.NULL,'刘祥',NULL,21 C.'5021',NUlL,男,21 D.'5021',
'刘祥',NULL,NULL
51.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( C )
A.多对多
B.一对一
C.多对一
D.一对多
52.在视图上不能完成的操作是( C )
A.更新视图
B.查询
C.在视图上定义新的基本表
D.在视图上定义新视图
53.有关数据和信息的概念,下列叙述正确的是:
A.数据是信息的载体B.数据是信息的内涵C.数据和信息互为载体D.数据和信息相互独立54.从“实体一联系“模型到数据模型实际上经历了三个领域的演变过程,即:
A.信息世界一现实世界一数据世界B.数据世界一信息世界一现实世界
C.现实世界一数据世界一信息世界D.现实世界一信息世界一数据世界
55.一个班级有多个学生,每个学生只能属于一个班级,班级与学生之间是[]
A.一对一的联系 B.一对多的联系C.多对一的联系D.多对多的联系
55.每个教师可以教授多门课程,每门课程至少有两名教师任课,从课程到教师之间的联系类型是
A.多对多B.一对一C.多对一D.一对多
56.关系模型中,一个关键字是
A.至多由一个属性组成 B.由任选的几个属性组成
c.由一个或多个其值能唯一标识该关系模式中任何元组的属性组成D.以上都不是57.英文缩写DBA代表
A.数据库管理员B.数据库管理系统C.数据定义语言D.数据操纵语言58.若在实体R的诸属性中,属性A不是R的主键,却是另一个实体S的主键,则称A为R 的
A.候选键B.外部键C.非主属性D.主属性
59.在下述局部E-R图中,标出*号的图形元素是
A.实体B.实体的属性C.联系 D 联系的属性
60.现有关系:学生(学号,姓名,课程号,系号,系名,成绩),为消除数据冗余,至少需要分解为
A.1个表 B.2个表 C.3个表 D.4个表 [ ]
61.如果要修改表的结构,应该使用SQL语言的命令
A.UPDATE TABLE B.MODIFY TABLE C.ALTER TABLE D.CHANGE TABLE [ ]
62.在下列关于关系的陈述中,错误的是()
A 表中任意两行的值不能相同
B 表中任意两列的值不能相同
C 行在表中的顺序无关紧要
D 列在表中的顺序无关紧要
63.SQL语言中,删除一个表的命令是()
A DELETE
B DROP
C CLEAR
D REMORE
64.有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于()
A 实体完整性约束
B 参照完整性约束
C 用户自定义完整性约束
D 关键字完整性约束65.已知成绩关系如图2所示。
执行SQL语句:
SELECT COUNT(DISTINCT学号)
FROM成绩
WHERE分数>60
查询结果中包含的元组数目是()
成绩
图2
A 1
B 2
C 3
D 4
66.下列有关数据库的叙述中,正确的是【】。
A.避免了一切数据重复
B.减少了数据冗余
C.各种用户可以随意使用库中的数据
D.数据一致性是指库中数据类型一致
67.实体中的任一关键字是【】。
A.只能由一个可以区别实体集合中不同个体的属性组成。
B.可以由一个或多个可区别实体集合中不同个体的属性组成。
C.必须由多个可区别实体集合中不同个体的属性组成。
D.随便,可由用户任意指定。
68.在一个用于表示两个实体间联系的关系中,用于表示实体间联系的是该关系中【】。
A.任何一个属性 B.任何多个属性集合C.关键字 D.外部关键字
69.关系模型所能表示的实体之间联系方式【】。
A.只能表示1:1联系
B.只能表示1:n联系
C.只能表示m:n联系
D.可表示任意联系方式
70. 在一个关系中,用外部键来【】。
A.唯一标识一个元组。
B.确定元组的
某个属性。
C.建立两个关系的联系 D.上述说法都不对
71.实体和属性是【】世界中的概念。
A.现实世界
B.信息世界
C.数据世界
D.以上都对
72.E-R图所表示的实体及其联系,实际上是【】。
A.信息模型
B.数据模型
C.关系模型
D.实体模型
73.实体之间的联系方式有【】种。
A.1 B.3 C.4 D.2
74.在文件系统中,一张二维表称为一个【】,表头行称为记录型,表中其它各行称为【】,而每一列中的各元素称为一个【】。
A.记录,文件,数据项
B.文件,记录,数据项
C.记录,数据项,文件
D.文件,数据项,记录
74.数据库设计的逻辑模式设计阶段的任务是【】。
A.将总体E-R图转化为关系模型
B.收集和分析用户需求
C.建立E-R模型
D.数据库模式设计
75.数据库系统中的软件是指【】。
A.数据库管理系统
B.应用程序
C.数据库
D.数据库管理员
76.Select查询语句执行的结果是()。
A.数据库 B.表 C.元组 D.属性
77.在Transact-SQL语法中,用来插入数据与更新的命令是()。
A.INSERT,UPDATE B.UPDATE,INSERT
C.DELETE,UPDATE D、CREATE,INSERT INTO
78.在Transact-SQL语法中,SELECT语句至少包括的部分()。
A.SELECT,INTO B.SELECT,FROM
C.SELECT,GROUP D.仅SELECT
79.下列关于视图的描述中,不正确的是( )。
A.视图是子模式B.视图是虚表
C.使用视图可以加快查询语句的执行速度D.使用视图可以简化查询语句的编写
四、填空题
1、在三大传统的数据模型中,具有严格的数学理论基础的是___关系模型____。
2、实现概念模型最常用的表示方法是___E-R模型___。
3.E-R图中包括实体、属性和联系三种基本图素。
4.数据库逻辑设计步骤分为三步,分析实体及联系、画E-R图、建立数据模型。
5.数据库概念设计通常采用E-R或实体联系的方法。
6、合同库文件储存批发商与零售商的供货合同。
一个合同可以填写不同商品的订货数量。
供货合同的关系模式为:合同(合同号,商品号,商品名,单价,数量),该关系的关键字是合同号,商品号。
7.实体间联系分为三种:一对一联系、__一对多联系____ 、多对多联系。
8.数据库结构设计的过程是“概念设计→___逻辑设计________→物理设计”。
9.数据管理经过了手工文档、文件系统和__数据库系统_三个发展阶段。
10.如果两个实体之间具有M:N联系,则将它们转换为关系模型的结果是___3____个表。
11.一个关系就是一个_二维表__,一行对应一个元组,一列对应一个域,也就是一个属性。
12.DBA是指__数据库管理员__,它的职责是维护和管理_数据库___,使之始终处于最佳状态。
13.在关系数据库中,用__二维表__表示实体及实体之间的关系。
14.DBMS的含义是__数据库管理系统___,它是用户和___数据库__之间的接口。
15.除计算机软硬件环境外,数据库系统一般由____数据库____、_____数据库管理系统_______、______数据库管理_______和____应用程序_________组成。
16.在数据库系统中,用户对数据的操作只能通过____DML___语言进行。
17.数据库逻辑设计一般分为三个阶段,即___收集和分析用户需求____、___建立E-R模型_____和___数据库模式设计____。
18.在关系的诸属性中,能够用来唯一标识元组的那个属性称为___键____。
19.现实世界中的事物类,在信息世界中称为____实体集__,而一个事物则称为__实体____,事物的性质称为__属性___。
20.“键”也称为关键字,是指在实体属性中,可用来区别实体集中不同个体的一个或几个_______属性____的组合。
当有多个属性可作为键而选定其中一个时,则称它为该实体的________主键_______。
若在实体的各属性中,某属性虽非该实体的主键,却是另一实体的主键,则成此属性为____外部键_______。
21.视图是一个虚表,因为它是从__基本表导出__的表。
22、已知:系(系编号、系名称、系主任、电话、地点)和学生(学号、姓名、性别、入学、日期、专业、系编号)两个关系,指出系关系的主码是___系统号____,系关系的外码是___________无_______,学生关系的主码是____学号____、外码是__系编号____。
23、已知:学生、课程和成绩三个关系如下:学生(学号,姓名,性别,班级),课程(课程名称,学时,性质),成绩(课程名称,学号,分数),学生关系的主代码应该是___学号__,外码应该是___无___;课程关系的主码应该是___课程名称_____,外码应该是____无_____;成绩关系的主码应该是__学号__,外码应该是__课程名称和学号___。
24、SQL Server 2000的文件包括: 数据文件(.mdf或.ndf)和日志文件。
25、在T-SQL语言中,若要修改某张表的结构,应该使用的修改关键字是 ALTER ;若要创建一个数据库,应该使用的语句是 CREATE DATABASE 。
26. 声明局部变量的命令为(declare@变量名)。
27. 修改表的命令是(ALTER TABLE 表名)。
28.计算字段的累加和的聚合函数是(sum(字段名) ) 或( sum() )。
29.查看全局变量的命令为( select @ 全局变量名)。
30.删除数据库的命令是 drop database 。
31.通配符“%”的含义表示匹配0个多个字符;而通配符“_”的含义表
示匹配单个字符。
四、简答题(本大题共4小题,每小题5分,共20分)
1.数据库系统由哪几部分组成?数据库、硬件和数据库管理系统
2. 简述DBMS的功能?数据存储、数据操作和数据控制
3.请简述SQL语言中VIEW(视图)的含义,VIEW与基本表有什么区别和联系?
视图是从一个或多个表(或视图)导出的表。
区别:视图是一个虚表,视图所对应的数据不进行实际存储。
联系:对视图进行操作是,系统根据视图定义去操作与视图相关联的基本表。
4. 简述数据库系统的特点
1、实现数据共享,减少数据冗余。
2、采用特定的数据模型。
3、具有较高的数据独立性。
4、有统一的数据控制功能。
5、说明数据库设计的主要步骤。
进行数据抽象、设计局部概念模式、将局部概念模式综合成全局概念模式、对全局结构进行评审。
6.SQL语言具有什么功能?
数据的定义、操纵、控制和SQL语句嵌入
7. 举例说明什么是实体之间一对多联系?举例说明什么是实体之间一对一联系?举例说明什么是实体之间多
对多联系?
8. 下列程序的运行结果有何区别。
(1)Select phone from authors where phone='415%'
(2)select phone from authors where phone like '415%'
9. 用SQL语句创建数据库时可包含几类文件?
1、主数据文件。
2、辅助数据文件
3、事务日志文件
三、请使用SQL命令完成以下操作(本大题共5小题,每小题4分,共20分)
(6分)
8、有一个“学生-课程”数据库,数据库中包括三个表:
(1) “学生”表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,可记为:Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字。
(2) “课程”表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,可记为:Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。
(3) “学生选课”表SC由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,可记为:SC(Sno,Cno,Grade) (SNO, CNO) 为关键字。
完成下列操作:
(1)写出创建Student数据库的命令,该数据库的主数据文件逻辑名称为Student_data,物理文件名为Student.mdf,初始大小为1MB,最大尺寸为2MB,增长速度为1mb;数据库的日志文件逻辑名称为Student_log,物理文件名为Student.ldf,初始大小为1MB,最大尺寸为3MB,增长速度为10%。
(2)写出创建“学生”表Student的命令,表Student是由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成,其中学号属性不能为空,并且其值是唯一的。
(3).在student表中查询Sdept是‘计算机’的学生的所有信息,并按Sno降序排列。
ORDER BY Sno DESC
(4).在以上三个表中查询Ccredit为5并且Grade大于60的学生的学号、姓名和性别。
7. 举例说明什么是实体之间一对多联系?举例说明什么是实体之间一对一联系?举例说明什么是实体之间多对多联系?
8.下列程序的运行结果有何区别。
(1)Select phone from authors where phone='415%'
(2)select phone from authors where phone like '415%'
9. 用SQL语句创建数据库时可包含几类文件?
10. 有一个电影资料库,数据库中含有三个数据表:电影信息、演员信息和电影_演员信息。
各表构成见表1-表3。
表1 “电影信息”表
(1)请建立电影信息表,包括约束要求。
Create table 电影信息
(
电影编号primary key , not null,int identity(1,1),
片名varchar(50),
发行时间char(4),
片唱smallint defult 90,
类型char(4) check(类型in(’’,’’,’’,’’))
)
表2 “演员信息”表
表3 “电影_演员信息”表
(2)为“电影_演员信息”表添加外键约束。
(3)检索出主演过“科幻”类电影的演员的姓名及电影片名。
(4)检索出电影长度不小于平均长度的电影片名和发行公司。
11、请使用SQL命令完成以下数据定义或数据操纵
(1).创建数据库“studentDB”,其主数据文件名称stu_data,物理文件保存在d:\data下,名称为student.mdf,初始大小5M,最大50M,以1M速度增加;该数据库的日志文件是stu_log,保存在d:\data下,名称为student.ldf,初始大小2M,以5%速度增加。
(5分)
(2)建立学生信息表student,包括约束。
(5分)
字段名数据类型可否为空约束条件
学号Char(10) 否主键
姓名Varchar(20) 否
性别Char(2) 否默认为“男”,取值只能为“男”或“女”
出生日期Smalldatetime 可
(3)为32题建立的student表的“姓名”属性创建非惟一的非聚集索引name_index。
(4)为(3)题建立的student表输入以下数据。
(5)将(3)题建立的student表中李勇的出生日期更改为1995-6-19。
(6)由(3)题建立的student表创建所有女生信息的视图。
(7)删除(3)题建立的student表中学号为“0401332901”学生的数据。
12、请使用SQL命令完成以下检索操作
已知有图书表、作者表和出版社表,各表字段定义如下:
图书(图书编号,书名,价格,出版社编号,种类)
作者(作者编号,姓名,性别,电话,城市,地址)
出版社(出版社编号,出版社名称,出版社地址)
(1).检索出所有图书的种类(不能含有相同种类)。
(2).检索出价格不在20至50元之间的图书的书名和价格。
(3).检索出各类图书的最高价格。
(4).检索出图书编号以“C”开头,中间第3位为数字0-5的图书信息。
(5).检索出“北京”市或“上海”市男性作者的编号、姓名和地址。
(6).检索出“计算机”类图书的平均价格和种类,并以“平均价格”表示。
(7).请按城市降序排列输出作者信息。
(8).检索出价格在50元以上图书的书名、价格及出版社名称。
(9).查询出版“音乐”类图书的出版社名称和地址。
14、编程题(共4题)
有一个“学生-课程”数据库,数据库中包括三个表:
(1) “学生”表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,可记为: Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字。
(2) “课程”表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,可记为: Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。
(3) “学生选课”表SC由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,可记为: SC(Sno,Cno,Grade) (SNO, CNO) 为关键字。
完成下列操作:
(1)请把其中建立“学生”表Student的语句写下来,表Student是由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成,其中学号属性不能为空,并且其值是唯一的。
(2)在student表中查询Sdept是‘计算机’的学生的所有信息,并按Sno降序排列。
(3)在以上三个表中查询Ccredit为5并且Grade大于60的学生的学号、姓名和性别。
(4)为Course表创建一个名称为my_trig的触发器,当用户成功删除该表中的一条或多条记录时,触发器自动删除SC表中与之有关的记录。
(注:在创建触发器之前要判断是否有同名的触发器存在,若存在则删除之。
)
五、设计题(本大题共2小题,每小题10分,共20分)
1.需要将学校中的专业系、教员、课程以及他们之间的关系组织到数据库中,对于每个专业系
(D)存储的信息有:专业系号(DNO)、专业系名(DNAME)、专业系主任(DEAN);对每个教员(PROF)需要存储的信息有:职工号(PNO)、姓名(PNAME)、专长(SPEC);对每门课程(COURSE)需要存储的信息有:课程号(CNO)、课程名(CNAME)、学分(CREDIT)。
有关的联系是:每个专业系有若干名教员、开设若干门课程,每位教员只在一个专业系工作,每门课程只由一个专业系开设;每位教员可讲授多门课程,每门课程可由多位教员讲授;课程之间有先修联系,每门课程可由多门其他课程作为它的直接先修课,每门课程也作为多门其他课程的直接先修课。
(1).画出E-R图;(2).把E-R图转换为关系模型(写出各关系模式);
专业系(专业系号(DNO)、专业系名(DNAME)、专业系主任(DEAN)
教员职工号(PNO)、姓名(PNAME)、专长(SPEC)
每门课程课程号(CNO)、课程名(CNAME)、学分(CREDIT)。
讲课(职工号,课程号,讲课时间)
选课(课程号,课程名,专业系号,学分)
2.工厂有若干仓库,每个仓库中有若干职工在其中工作,每个仓库有一名职工做为管理员, 每个仓库存放若干零件,每种零件可存放在不同仓库中, 每种零件由其他若干种零件构成, 每种零件可构成其他不同的零件,每位职工都有一名职工作为他的领导.仓库有仓库号, 仓库地址, 仓库容量;职工有职工号, 职工名,工种; 零件有零件号, 零件名, 零件重量.
要求:(1)画出E-R图. (2)转换为关系模型,写出关系模式,并指出每个关系的主码及外码.
仓库仓库号, 仓库地址, 仓库容量;
职工职工号, 职工名,工种,仓库号
零件零件号, 零件名, 零件重量.
存放仓库号零件号,存放时间
3、某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。
工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。
(1)根据上述语义画出ER图,在ER图中需注明实体的属性、联系的类型及实体的标识符。
(2)将ER模型转换成关系模型,并指出每个关系模式的主键和外键。
工厂(工厂编号,厂名,厂址)主健:工厂编号
产品(产品编号,产品名,规格)主健:产品编号。