(完整版)数据库原理与应用习题参考答案
第1章 数据库概述
1.与文件管理相比,数据库管理有哪些优点?
答:(1)相互关联的数据集合;(2)较少的数据冗余;(3)程序与数据相互独立;(4)保证数据的安全可靠;(5)最大限度地保证数据的正确性;(6)数据可以共享并能保证数据的一致性。
2.比较文件管理和数据库管理数据的主要区别。
答:文件系统不能提供数据的独立性,也不能提供数据共享、安全性等功能,这些需要客户端编程实现。而数据库管理系统可以很方便地提供这些功能。
3.在数据库管理方式中,应用程序是否需要关心数据的存储位置和结构?为什么?
答:不需要。因为这些都由数据库管理系统来维护。
4.在数据库系统中,数据库的作用是什么?
答:数据库是存储数据的仓库,其作用是存储数据。
5.在数据库系统中,应用程序可以不通过数据库管理系统而直接访问数据库文件吗?
答:不可以。
6.数据独立性指的是什么?它能带来哪些好处?
答:数据独立性包括逻辑独立性和物理独立性两部分。物理独立性是指当数据的存储结构发生变化时,不影响应用程序的特性;逻辑独立性是指当表达现实世界的信息内容发生变化时,不影响应用程序的特性。这两个独立性使用户只需关心逻辑层即可,同时增强了应用程序的可维护性。
7.数据库系统由哪几部分组成,每一部分在数据库系统中的作用大致是什么?
答:数据库系统一般包括3个主要部分:数据库、数据库管理系统和应用程序。数据库是数据的汇集,它以一定的组织形式保存在存储介质上;数据库管理系统是管理数据库的系统软件,它可以实现数据库系统的各种功能;应用程序专指以数据库数据为基础的程序
8.在文件服务器结构和客户/服务器结构中,对数据的处理有什么区别?
答:在文件服务器结构中,数据的处理是在客户端完成的,而在客户/服务器结构中,对数据的处理是在服务器端完成的,服务器返回给客户端的是处理后的结果。
第2章 数据模型与数据库系统结构
1.解释数据模型的概念,为什么要将数据模型分成两个层次?
答:数据模型实际上是模型化数据和信息的工具,在数据库中,数据模型要满足三个要求:第一,要能够比较真实地模拟现实世界;第二,要容易被人们理解;第三,要能够很方便地在计算机上实现。用一种模型来同时满足这三方面的要求比较困难,因此在在数据库系统中针对不同的使用对象和应用目的,采用了两种不同的数据模型来实现,一个是概念层数据模型,用来满足第一和第二个要求;另一个是组织层数据模型,用来满足第三个要求。
2.概念层数据模型和组织层数据模型分别是针对什么进行的抽象?
答:概念层数据模型主要针对用户的业务进行抽象,组织层数据库模型主要针对具体的数据库管理系统采用的数据组织方式进行抽象。
3.实体之间的联系有几种?分别是哪些?请为每一种联系举出一个例子。
答:有三种:1:1;1:n;m:n。1:1示例:系和系主任。1:n示例:班和学生;m:n示例:教师和学生。
4.说明实体-联系模型中的实体、属性和联系的概念。
答:实体是具有公共性质的并可相互区分的现实世界对象的集合。属性是实体所具有的特征或性质。联系是实体之间的关联关系。
5.指明下列实体间联系的种类:
(1)教研室和教师(假设一个教师只属于一个教研室,一个教研室可有多名教师)。
答:一对多。
(2)商店和顾客。
答:多对多。
(3)国家和首都。
答:一对一。
6.解释关系模型中的主键、外键的概念,并说明主键、外键的作用。
答:主键是用于唯一确定表中一个元组的一个属性或最小的属性组。外键用于实现数据之间的关联关系(参照完整性)。
7.指出下列关系模式的主键:
教师授课表(教师号,课程号,学年,授课时数)。
假设一个教师可以在同一个学年讲授多门课程,一门课程也可以在同一个学年由多名教师讲授,但一个教师在一个学年对一门课程只讲授一次,每一次讲授有一个唯一的授课时数。
答:(教师号,课程号,学年)
8.设有如下两个关系模式,试指出每个关系模式的主键、外键,并说明外键的引用关系。
产品表(产品号,产品名称,产品价格,生产日期),其中产品名称有重复。
销售表(产品号,销售时间,销售数量),假设可同时销售多种产品,但同一产品在同一时间只销售一次。
答:产品的主键:产品号,无外键。
    销售的主键:(产品号,销售时间),其中产品号为引用产品表的外键。
9.关系模型的数据完整性包含哪些内容?分别说明每一种完整性的作用。
答:包含:实体完整性、参照完整性和用户定义的完整性。
实体完整性:作用是保证表中的不存储相同的数据,也不存储无意义的数据。
参照完整性:用于描述实体之间的联系。
用户定义的完整性:用于限定属性的取值范围,目的是保证数据库中存储的值与现实世界相符。
10.数据库系统包含哪三级模式?试分别说明每一级模式的作用?
答:外模式、模式和内模式。外模式是对现实系统中用户感兴趣的整体数据结构的局部描述,用于满足不同用户对数据的需求。
模式:是数据库中全体数据的逻辑结构和特征的描述,它满足所有用户对数据的需求。
内模式:是对整个数据库的底层表示,它描述了数据的存储位置和存储方式。
11.数据库系统的两级映像的功能是什么?它带来了哪些好处?
答:两级映像是外模式/模式映像和模式/内模式映像。外模式/模式映像保证了当模式发生变化时可以保证外模式不变,从而是用户的应用程序不需要修改。模式/内模式映像保证了当内模式发生变化,比如存储位置或存储文件名改变,可以保持模式不变,从而使用户不需要知道这些变化。
12.数据库三级模式划分的优点是什么?它能带来哪些数据独立性?
答:数据库三级模式的划分使用户可以在逻辑层处理数据,而不需要关心具体的物理细节,
同时当内模式或模式发生变化时,可以通过模式之间的映像关系,保持外模式不变,从而避免了修改应用程序。三级模式以及三级模式之间的两级映像带来了数据的逻辑独立性和物理独立性。
第3章 SQL语言基础及数据定义功能
1.T-SQL支持哪几种数据类型?
答:字符串型、数值型、日期时间型和货币类型。
2.Tinyint数据类型定义的数据的取值范围是多少?
答:0~255。
3.日期时间类型中的日期和时间的输入格式是什么?
答:在输入日期部分时可采用英文数字格式、数字加分隔符格式和纯数字格式。采用英文数字格式时,月份可用英文全名或缩写形式。在输入时间部分时可以采用12小时格式或24小时格式。使用12小时制时要加上AM或PM说明是上午还是下午。在时与分之间可以使用
冒号(:)作为分隔符
4.SmallDatatime类型精确到哪个时间单位?
答:分钟。
5.定点小数类型numeric中的p和q的含义分别是什么?
答:p代表数字位长度,即整数部分和小数部分的数字位之和。q代表小数位数。
6.货币数据类型精确到小数点几位?
答:精确到小数点后4位。
7.Char(10)、nchar(10)的区别是什么?它们各能存放多少个字符?占用多少空间?
答:char(10)是普通编码,固定占10个字节,最多能存放10个字母或数字字符,5个汉字。Nchar(10)是统一字符编码,固定占20个字节,最多能存放10个字符(包括字母和汉字)。
8.Char(n)和varchar(n)的区别是什么?其中n的含义是什么?各占用多少空间?
答:Char(n)是定长字符类型,varchar(n)是可变长字符类型。Char(n)中的n代表固定占n个字节的空间;varchar(n) 中的n代表最多占n个字节的空间。
9.数据完整性的作用是什么?
答:数据的完整性作用是防止数据库中存在不符合语义的数据。
10.在对数据进行什么操作时,系统检查DEFAULT约束?在进行什么操作时,检查CHECK约束?
答:插入操作且省略了某些列的值时检查DEFAULT约束。插入和修改操作检查CHECK约束。
11.UNIQUE约束的作用是什么?
答:限制列的取值不重复。
12.写出创建如下三张表的SQL语句,要求在定义表的同时定义数据的完整性约束。
答:
Create table 图书表(
  书号 nchar(6) primary key,
  书名 nvarchar(30) not null,
  第一作者 char(10) not null,
  出版日期 smalldatetime,
  价格:numeric(4,1)
是什么)
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)
)
Create table图书销售表(
  书号 nchar(6) not null,
  书店编号 nchar(6) not null,
  销售日期 smalldatetime no tnull
  销售数量 smalldatetime check(销售数量 >= 1)
)
13.为第12题的“图书表”添加“印刷数量”列,类型为整数,同时添加约束,要求此列的取值要大于等于1000。
答:alter table 图书表 Add 印刷数量 int check(印刷数量 >= 1000)
14.删除第12题的“书店表”中的“”列。
答:alter table 书店表 Drop column
15.将第12题的“图书销售表”中的“销售数量”列的数据类型改为整型。
答:alter table 图书销售表 Alter column 销售数量 int
第4章 数据操作
1.查询SC表中的全部数据。
Select * from sc
2.查询计算机系学生的姓名和年龄。
Select sname,sage from student where sdept = 计算机系
3.查询成绩在70~80分的学生的学号、课程号和成绩。
Select sno,cno,grade from sc where grade between 70 and 80

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