《数据库原理与应⽤》(第三版)习题参考答案
第 1 章数据库概述
1. 试说明数据、数据库、数据库管理系统和数据库系统的概念。
答:数据是描述事物的符号记录。
数据库是长期存储在计算机中的有组织的、可共享的⼤量数据的集合。
数据库管理系统是⼀个专门⽤于实现对数据进⾏管理和维护的系统软件。
数据库系统是指在计算机中引⼊数据库后的系统,⼀般由数据库、数据库管理系统(及相关的实⽤⼯具)、应⽤程序、数据库管理员组成。
2. 数据管理技术的发展主要经历了哪⼏个阶段?
答:⽂件管理和数据库管理。
3. 与⽂件管理相⽐,数据库管理有哪些优点?
答:与⽂件系统管理数据相⽐,数据库系统管理数据带来了如下好处:将相互关联的数据集成在⼀起,较少的数据冗余,程序与数据相互独⽴,保证数据的安全可靠,最⼤限度地保证数据的正确性,数据可以共享并能保证数据的⼀致性。
4. 在数据库管理⽅式中,应⽤程序是否需要关⼼数据的存储位置和存储结构?为什么?
答:不需要。因为数据库管理系统提供了逻辑独⽴性和物理独⽴性。
5. 在数据库系统中,数据库的作⽤是什么?
答:数据库是数据的汇集,它以⼀定的组织形式保存在存储介质上。
6. 在数据库系统中,应⽤程序可以不通过数据库管理系统⽽直接访问数据⽂件吗?
答:不能
7. 数据独⽴性指的是什么?它能带来哪些好处?
答:数据独⽴性是指应⽤程序不会因数据的物理表⽰⽅式和访问技术的改变⽽改变,即应⽤程序不依赖于任何特定的物理表⽰⽅式和访问技术,它包含两个⽅⾯:逻辑独⽴性和物理独⽴性。
物理独⽴性是指当数据的存储位置或存储结构发⽣变化时,不影响应⽤程序的特性;
逻辑独⽴性是指当表达现实世界的信息内容发⽣变化时,不影响应⽤程序的特性。
8. 数据库系统由哪⼏部分组成,每⼀部分在数据库系统中的作⽤⼤致是什么?
答:数据库系统⼀般包括数据库、数据库管理系统(及相应的实⽤⼯具)、应⽤程序和数据库管理员四个部分。数据库是数据的汇集,它以⼀定的组织形式保存在存储介质上;数据库管理系统是管理数据库的系统软件,它可以实现数据库系统的各种功能;应⽤程序专指以数据库数据为基础的程序,数据库管理员负责整个数据库系统的正常运⾏。
第2章数据模型与数据库结构
1.解释数据模型的概念,为什么要将数据模型分成两个层次?
答:答:数据模型是对现实世界数据特征的抽象。数据模型⼀般要满⾜三个条件:第⼀是数据模型要能够⽐较真实地模拟现实世界;第⼆是数据模型要容易被⼈们理解;第三是数据模型要能够很⽅便地在计算机上实现。由于⽤⼀种模型来同时很好地满⾜这三⽅⾯的要求在⽬前是⽐较困难的,因此在数据库系统中就可以针对不同的使⽤对象和应⽤⽬的,采⽤不同的数据模型。根据模型应⽤的不同⽬的,将这些模型分为两⼤类:概念层数据模型和组织层数据模型,以⽅便对信息的描述。
2.概念层数据模型和组织层数据模型分别是针对什么进⾏的抽象?
答:概念层数据模型是对现实世界的抽象,形成信息世界模型,组织层数据模型是对信息世界进⾏抽象和转换,形成具体的DBMS⽀持的数据组织模型。
3.实体之间的联系有哪⼏种?请为每⼀种联系举出⼀个例⼦。
答:实体之间的联系有⼀对⼀、⼀对多和多对多三种。例如:系和正系主任是⼀对⼀联系(假设⼀个系只有⼀个正系主任),系和教师是⼀对多联系(假设⼀个教师只在⼀个系⼯作),教师和课程是多对多联系(假设⼀个教师可以讲授多门课程,⼀门课程可由多个教师讲授)。
4.说明实体-联系模型中的实体、属性和联系的概念。
5.指明下列实体间联系的种类:
(1)教研室和教师(设⼀个教师只属于⼀个教研室,⼀个教研室可有多名教师)。
(2)商品和顾客。
(3)国家和⾸都(假设⼀个国家的⾸都可以变化)。
(4)飞机和乘客。
(5)银⾏和账户。
(6)图书和借阅者。(设⼀个借阅者可同时借阅多本书,可在不同时间对同⼀本书借阅多次)
6.数据库系统包含哪三级模式?试分别说明每⼀级模式的作⽤?
答:数据库系统包含的三级模式为:内模式、模式和外模式。外模式是对现实系统中⽤户感兴趣的整体数据结构的局部描述,⽤于满⾜不同数据库⽤户需求的数据视图,是数据库⽤户能够看见和使⽤的局部数据的逻辑结构和特征的描述,是对数据库整体数据结构的⼦集或局部重构。模式是数据库中全体数据的逻辑结构和特征的描述,是所有⽤户的公共数据视图。内模式是对整个数据库的底层表⽰,它描述了数据的存储结构。
7.数据库管理系统提供的两级映像的作⽤是什么?它带来了哪些功能?
答:数据库系统的两级映象是模式与内描述间的映象和外模式与模式间的映象。模式/内模式的映象带来了物理独⽴性,即如果数据库的存储结构改变了,可通过调整模式/内模式的映象,使模式能够保持不变。外模式/概念模式间的映象带来了逻辑独⽴性,当概念模式的结构可发⽣改变时,也可通过调整外模式/模式间的映象关系,使外模式可以保持不变。
8.数据库三级模式划分的优点是什么?它能带来哪些数据独⽴性?
答:数据库的三级模式的划分实际上将⽤户、逻辑数据库与物理数据库进⾏了划分,使彼此之间的相互⼲扰减到最少。这三个模式的划分实际上带来了两个数据独⽴性:物理独⽴性和逻辑独⽴性。这使得底层的修改和变化尽量不影响到上层。
第3章关系数据库
1. 试述关系模型的三个组成部分。
答:关系数据结构、关系操作集合和关系完整性约束。
2. 解释下列术语的含义:
(1) 笛卡尔积:设D1,D2,…,Dn为任意集合,定义笛卡尔积D1,D2,…,Dn为:
D1×D2× …×Dn ={(d1,d2,…,dn) | di ∈Di,i=1,2,…,n }
(2) 主键:也称主码为或主关键字,是表中的属性或属性组,⽤于惟⼀地确定⼀个元组。
(3) 候选键:如果⼀个属性或属性集的值能够惟⼀标识⼀个关系的元组⽽⼜不包含多余的属性,则
称该属性或属性集为候选键。
(4) 外键:设F是关系R的⼀个或⼀组属性,如果F与关系S的主键相对应,则称F是关系R的外键。
(5) 关系:关系就是简单⼆维表。
(6) 关系模式:⼆维表的结构称为关系模式。
(7) 关系数据库:对应于⼀个关系模型的所有关系的集合称为关系数据库。
3. 关系数据库的三个完整性约束是什么?各是什么含义?
答:实体完整性、参照完整性和⽤户定义的完整性。
实体完整性是保证关系中的每个元组都是可识别的和惟⼀的。
参照完整性也称为引⽤完整性,⽤于表达现实世界中的实体之间的关联关系。
⽤户定义的完整性也称为域完整性或语义完整性,⽤于保证数据库中存储的值与现实世界相符。
4. 连接运算有哪些?等值连接和⾃然连接的区别是什么?
答:连接运算中最重要也是最常⽤的连接有两个,⼀个是等值连接,⼀个是⾃然连接。
⾃然连接与等值连接的差别为:
⾃然连接要求相等的分量必须有共同的属性名,等值连接则不要求;
⾃然连接要求把重复的属性名去掉,等值连接却不这样做。
5. 对参与并、交、差运算的两个关系R、S有什么要求?
答:必须结构相同,且相应的属性值取⾃同⼀个值域。
6. 对参与除运算的两个关系(R÷S)有什么要求?除运算的结果关系中包含哪些属性?
答:R中必须包含S的全部或部分属性,除运算的结果包含的属性是只属于R不属于S的属性。
7. 对参与⾃然连接和等值连接操作的两个关系R、S有什么要求?
答:有语义相同的属性。
8. 投影操作的结果关系中是否有可能存在重复的记录?为什么?
答:不可能,因为投影运算会⾃动去掉投影后重复的记录。
9.利⽤表3-10⾄3-12所⽰的三个关系,写出实现如下查询要求的关系代数表达式。
(1)查询“信息系”学⽣的选课情况,列出学号、姓名、课程号和成绩。
∏Sno, Sname, Cno, Grade(σSdept=‘信息系’(SC Student))
或:∏Sno, Sname, Cno, Grade(SC σSdept=‘信息系’(Student))
(2)查询“VB”课程的考试情况,列出学⽣姓名、所在系和考试成绩。
∏Sname, Sdept, Grade(σCname=‘VB’(Coure SC Student))
或:∏Sname, Sdept, Grade(σCname=‘VB’(Coure) SC Student)
(3)查询考试成绩⾼于90分的学⽣的姓名、课程名和成绩。
∏Sname, Cname, Grade(σGrade>90(Coure SC Student))
或:∏Sname, Cname, Grade(Coure σGrade>90(SC) Student)
(4)查询⾄少选修了0512101号学⽣所选的全部课程的学⽣的姓名和所在系。
∏Sname, Sdept(Student (SC ÷ ∏Cno(σsno=’0512101’(SC))))
(5)查询⾄少选了“C01”和“C02”两门课程的学⽣的姓名、所在系和所选的课程号。
∏Sname, Sdept, Cno(Student (SC ÷ ∏Sno(σcno=’C01’ V Cno=’C02’(SC))))
(6)查询没有选修第1学期开设的全部课程的学⽣的学号、姓名和所选的课程号。
∏Sno, Sname, Cno(Student SC (∏sno(SC) - ∏sno(σsemester=1(Course) SC)))
(7)查询计算机系和信息系选了VB课程的学⽣姓名。
∏Sname(σsdept
第4章 SQL Server 2012基础
1. 安装SQL Server 2012对硬盘及内存的要求分别是什么?
答:SQL Server 2012实际硬盘空间需求取决于系统配置和您决定安装的功能,⼀般应确保系统驱动器中是否有⾄少 6.0 GB 的可⽤磁盘空间。
内存:Express 版本:最少512 MB;其他版本:最少1 GB。
2. SQL Server实例的含义是什么?实例名的作⽤是什么?
答:⼀个实例代表⼀个独⽴的数据库管理系统。实例名是实例的标识,⽤户通过“计算机名/实例名”的⽅式可访问指定的命令实例。
3. SQL Server 2012的核⼼引擎是什么?
答:SQL Server(MSSQLSERVER)
4. SQL Server 2012提供的设置服务启动⽅式的⼯具是哪个?
答:配置管理器
5. 在SQL Server 2012中,每个数据库⾄少包含⼏个⽂件?
答:2个⽂件,⼀个数据⽂件,⼀个⽇志⽂件
6. SQL Server 2012数据库⽂件分为⼏类?每个⽂件有哪些属性?
答:主要数据⽂件和次要数据⽂件,属性有:物理⽂件名及其位置、逻辑⽂件名、初始⼤⼩、增长⽅式、最⼤⼤⼩。
第 5 章数据类型及关系表创建
1. Tinyint数据类型定义的数据的取值范围是多少?
答:0-255
2. SmallDatatime类型精确到哪个时间单位?
答:分钟
3. 定点⼩数类型numeric中的p和q的含义分别是什么?
答:p代表整数位数+⼩数位数的和值,q代表⼩数位数。
4. Char(n)、nchar(n)的区别是什么?它们各能存放多少个字符?
答:Char(n)中的n代表能存放n个字节的字符,如果是字母可以存放n个,如果是汉字可存放n/2个。Nchar(n)中的n代表能存放的字符个数。
5. Char(n)和varchar(n)的区别是什么?
答:Char(n)是定长存储,⼀定占n个字节的空间。Varchar(n)代表最多占n个字节的空间。
6. 数据完整性约束的作⽤对象有哪些?
答:表和列
7. CHECK约束的作⽤是什么?
答:限制列的取值范围。
8. UNIQUE约束的作⽤是什么?
答:限制列取值不重。
9. DEFAULT约束的作⽤是什么?
答:提供列的默认值。
上机练习
1. 在第4章创建的Students数据库中,写出创建如下三张表的SQL语句,要求在定义表的同时定义数据的完整性约束:(1)“图书”表结构如下:
书号:统⼀字符编码定长类型,长度为6,主键;
书名:统⼀字符编码可变长类型,长度为30,⾮空;
第⼀作者:普通编码定长字符类型,长度为10,⾮空;
出版⽇期:⼩⽇期时间型;
价格:定点⼩数,⼩数部分1位,整数部分3位。
create table 图书(
书号 nchar(6) primary key,
书名 nvarchar(30) not null,
第⼀作者 char(10) not null,
出版⽇期 smalldate,
价格 numeric(4,1)
)
(2)“书店”表结构如下:
书店编号:统⼀字符编码定长类型,长度为6,主键;
店名:统⼀字符编码可变长类型,长度为30,⾮空;
电话:普通编码定长字符类型,8位长,每⼀位的取值均是0~9的数字;
地址:普通编码可变长字符类型,40位长。
:普通编码定长字符类型,6位长。
create table 书店(
书店编号 nchar(6) primary key,
店名 nvarchar(30) not null
电话 char(8) check(电话 like ‘[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]’),
地址 varchar(40),
char(6)
)
(3)“图书销售”表结构如下:
书号:统⼀字符编码定长类型,长度为6,⾮空;
书店编号:统⼀字符编码定长类型,长度为6,⾮空;
销售⽇期:⼩⽇期时间型,⾮空;
销售数量:⼩整型,⼤于等于1。
主键为(书号,书店编号,销售⽇期);
其中“书号”为引⽤“图书表”的“书号”的外键;
“书店编号”为引⽤“书店表”的“书店编号”的外键。
create table 图书销售(
书号 nchar(6) not null,
书店编号 nchar(6) not null,
销售⽇期 samlldate,
销售数量 smallint check(销售数量 >= 1),
primary key(书号, 书店编号, 销售⽇期),
foreign key(书号) references 图书(书号),
foreign key(书店编号) references 书店(书店编号)
)
2. 为图书表添加“印刷数量”列,类型为整数,同时添加取值⼤于等于1000的约束。
Alter table 图书 add 印刷数量 int check(印刷数量 >= 1000)
3. 删除书店表中的“”列。
Alter table 书店 drop column
4. 将图书销售表中的“销售数量”列的数据类型改为整型。
Alter table 图书 alter column 销售数量 int数据库原理及应用期末考试题
第 6 章数据操作语句

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。