《数据库原理与应用》课后习题参考答案第一章作业参考答案1.单选题CCDBC2.判断题对错错错对3填空题网状模型用户商业智能数据挖掘系统设计4简答题1)数据模型是指描述事物对象的数据组成、数据关系、数据约束的抽象结构及其说明。数据模型是指描述事物对象的数据组成、数据关系、数据约束的抽象结构及其说明。数据模型是指描述事物对象的数据组成、数据关系、数据约束的抽象结构及其说明。3)数据约束:用于描述数据结构中数据之间的语义联系、数据之间的制约和依存关系,以及数据动态变化的规则。主流数据库采用关系图模型。数据库典型数据模型:层次数据模型网状数据模型关系数据模型其它数据模型(如对象数据模型、键值对数据模型、列式数据模型。。。)2)数据库——是一种依照特定数据模型组织、存储和管理数据的文件,数据库文件一般存放在辅助存储器以便长久保存。数据库具有如下特点:数据不重复存放;提供给多种应用程序访问;数据结构独立于使用它的应用程序;对数据增、删、改、检索由统一软件进行管理和控制。3)数据库(Database)是一种依照特定模型组织、存储和管理数据的数据结构。在数据库中,不仅存放了数据,而且还存放了数据与数据之间的关系。数据库内部元素:用户表:用户在数据库中创建的数据库表;系统表:数据库中系统自带的数据库表;视图:数据库中用于对数据进行查询的虚拟表;索引:数据库中用于加快数据查询的索引项;约束:数据库中对数据、数据关系施加的规则;存储过程:数据库内部完成特定功能处理的程序;触发器:数据库内部因数据变化自动执行的一类存储过程等等4)数据库系统包括:用户、数据库应用程序、数据库管理系统和数据库四个组成要素。5)数据库管理系统(DatabaseManageSystem,DBMS)——是一种专门用来创建数据库、管理数据库、维护数据库,并提供对数据库访问的系统软件。数据库管理系统(DBMS)主要功能:创建数据库和表;创建支持结构,如索引等;读取数据库数据;修改数据库数据;维护数据库结构;执行规则;并发控制;提供安全性;执行备份和恢复等等第二章作业参考答案1单选题CBDAA2.判断题对对错对错3填空题全外连接数据约束候选键用户定义完整性4简答题外码键1)在关系模型中,使用“关系”来存储“实体”中的数据。关系(relation)——是指存放实体数据的二维表。关系特征:行存储实体的个体数据;列存储所有实体个体属性的数据;表中单元格存储单个值,所有的列必须是原子的;每列的所有实体个体数据类型一致;每列具有唯一名称;列顺序可任意;行顺序可任意;任意两行互不重复。2)键(key)——是指关系中用来唯一标识元组的单个列或多列。候选键——关系中可能有多个键,每个都是候选键。主键(Primarykey)也是候选键之一,关系表可以有多个候选键,但只能定义一个主键。主键作用:唯一标识关系的每行;作为关联表的外键,链接两个表;使用主键值来组织关系的存储;使用主键索引快速检索数据3)代理键——采用DBMS自动生成的数字序列作为关系表的主键。由DBMS自动生成的数字序列作为主键,可替代复合主键。由DBMS自动生成的数字序列作为主键,可替代复合主键。4)在关系表定义中,主键属性不允许空值(Null),即必须有具体值。其它属性可以允许空值。NULL值只是代表该属性可以没有具体值,它与零值、空格字符、Tab字符是不同的。5)参照完整性:关系模型中实体及实体间的联系都是用关系来描述的,因此可能存在着关系与关系间的引用。参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值),或者等于S中某个元组的主码值。参照完整性属于表间规则例子:课程表字段名称字段编码数据类型字段大小必填字段是否为键课程编号CourseID文本4是主键课程名CourseName文本20是否课程类别CourseType文本10否否学分CourseCredit数字短整型否否学时CoursePeriod数字短整型否否考核方式学生表TestMethod文本10否否字段名称字段编码数据类型字段大小必填字段是否为键学号StudentID文本12是主键姓名StudentName文本10是否性别StudentGender文本2否否出生日期BirthDay日期短日期否否专业Major文本30否否手机号StudentPhone文本11否否选课注册表有两个外键开课编号学号字段名称字段编码数据类型字段大小必填字段是否为键注册编号CourseRegID自动编号长整型是代理键开课编号CoursePlanID数字长整型是外键学号StudentID文本12是外键备注Note文本30否否5应用题1)a)ABCBCDa2b1c2b1c2d3a2b1c2b2c1d1a2b1c2b3c3d3a1b3c1b1c2d3a1b3c1b2c1d1a1b3c1b3c3d3a2b2c1b1c2d3a2b2c1b2c1d1a2b2c1b3c3d3a2b3c3b1c2d3a2b3c3b2c1d1a2b3c3b3c3d3a3b1c2b1c2d3a3b1c2b2c1d1a3b)b1c2b3c3d3a2c)a2b1c2d3a2b2c1d1a2b3c3d3a2d)b1c2d3a2b1c2d3a2b2c1d1a2b3c3d3a2b1c2d32)IIname(READERjionBOOKJoinPUBLISH)3)第三章作业参考答案1单选题ACDCA2.判断题对错对错对3填空题IBMinsertupdatesum,leftjion4简答题1)SQL(StructuredQueryLanguage,结构化查询语言)是一种对数据库进行访问的数据操作子语言。其SQL语句执行命令完成对数据库访问操作。(1)语法简单,易学易用,类似于英语自然语言。(2)高度非过程化的语言。只输入操作的种类和范围,不关心存取路径等内容。(3)面向集合的语言。(4)SQL独立使用,也可以嵌入到宿主语言(5)功能强大。定义关系模式、创建数据库、插入数据、更新数据、复杂查询、维护数据、重构数据库和控制数据库安全等。2)在实际应用中,通常需要关联多表才能获得所需的信息。在SELECT查询语句中,可使用子查询方式实现多表关联查询。在处理多个表时,子查询只有在结果来自一个表的情况下才有用。但如果需要显示两个或多个表中的数据,就不能使用子查询,而需要采用连接操作。在SQL语言中,实现多表关联查询还可以使用JOIN…ON关键词的语句格式。3)关系表中数据完整性、表之间数据一致性等要求。具体是由业务需求来确定。数据的完整性包括实体完整性、参照完整性、用户定义完整性。具体在关系数据库表中的约束:主键的定义;属性列取值类型type;属性列取值范围;属性列取值是否唯一unique;属性列是否允许空值NULL;关联表的参照完整性约束即外键的定义。4)列约束是定义在每个列上,列约束子句包括PRIMARYKEY——主键,NOTNULL——非空值,NULL——空值,UNIQUE——值唯一,CHECK——有效性检查,DEFAULT——缺省值。表约束是对整个表格的约束性,使用表约束定义主键的优点:CONSTRAINTDEPARTMENT_PKPRIMARYKEY(DepartmentName,便于定义复合主键,可命名主键约束,便于定义代理键。外键及其参照完整性约束CONSTRAINTDEPARTMENT_FKFOREIGNKEY(DEPARTMENT)REFERENCESDEPARTMENT(DepartmentName)5)视图——是一种通过其它表或视图构建的虚拟表。它本身没有自己的数据,而是使用了存储在表或其它视图中的数据。基本语句格式CREATEVIEW视图名[(列名1),(列名2),…]ASSELECT查询;使用视图简化复杂SQL查询操作:通过视图,数据库开发人员可以将复杂的查询语句封装在视图内,使外部程序只需要使用简单方式访问该视图,便可获取所需要的数据。使用视图提高数据访问安全性通过视图可以将基本数据表部分敏感数据隐藏起来,外部用户无法得知数据表的完整数据,降低数据库被攻击的风险。此外,还可以保护部分隐私数据。3.提供一定程度的数据逻辑独立性:通过视图,可提供一定程度的数据逻辑独立性。当数据表结构发生改变,只要视图结构不变,应用程序可以不作修改。集中展示用户所感兴趣的特定数据:通过视图,可以将部分用户不关心的数据进行过滤,仅仅提供他们所感兴趣的数据。第四章1单选题CBCBA2.判断题对对错错错3填空题弱实体;概念模型设计逻辑模型设计物理模型设计;1:1一对一1:N一对多m:N多对多;ID依赖非ID依赖,父实体子实体4简答题1)在从现实世界到计算机世界的数据库设计过程中,经历了概念层设计、逻辑层设计及物理层设计三个阶段,其创建的数据模型分别称为概念数据模型、逻辑数据模型和物理数据模型。在从现实世界到计算机世界的数据库设计过程中,经历了概念层设计、逻辑层设计及物理层设计三个阶段,其创建的数据模型分别称为概念数据模型、逻辑数据模型和物理数据模型。在逻辑数据模型中,是从系统设计角度描述系统的数据对象组成及其关系,并考虑这些数据对象在计算机系统中的逻辑表示。在物理数据模型中,系统数据被描述为“数据表”、“主键”、“外键”等形式。该数据模型需要考虑在计算机系统中的具体DBMS实现方式。2)数据需求分析选题概念数据建模、系统逻辑数据建模、系统物理数据建模数据库实现。E-R模型是“实体-关系模型”(Entity-RelationshipModel)的简称。它是一种描述现实世界概念数据模型的有效方法。3)实体(Entity)是客观世界中描述事物数据对象的抽象概念。实体可以是人,也可以是物或抽象的概念;可以指事物本身,也可以指事物之间的关系,如一个人,一件物品,一个部门等都可以是实体。实每个实体都有自己的一组数据特征,这些描述实体的数据特征称为实体的属性(Attribute)。例如,学生实体具有学号、姓名、性别等属性。不同实体的属性是不同的。实体间的关系,关系表示一个或多个实体之间的关联关系。4)实体之间关联的数目称为元。实体自己与自己之间的关系称为一元关系,也称递归关系。两个实体之间的关系称为二元关系;三个实体之间的关系称为三元关系。在实际应用中,二元关系是最常见的实体关系。5)在“一对一”、“一对多”和“多对多”的关系中,把两个实体集中有关系的实体关系数量分成两种类型:“唯一”和“不唯一”。例如,学校规定对于全校公选课,学生每学期至少选修1门课程,最多选修5门课程;每门课程最少要有15个人选,最多不能超过150人。对于这种情况,首先确定学生的基数是(15,150),课程的基数是(1,5)。这种实体关系的对应数目称为这个关系的基数,用(min,max)形式表示,其中min表示最小基数,max表示最大基数。如果最小基数为0,则关系中的实体参与是可选的。如果最小基数为1,则关系中的实体参与是强制性的。6)二元实体关系有三种类型:一对一关系、一对多关系和多对多关系。作业参考答案7)数据库概念数据模型设计是通过对现实世界中信息实体进行抽取、分类、聚集和概括等处理,建立数据库概念数据结构的过程。概念数据库设计的方法主要有两种:集中式设计方法,视图综合设计方法。集中式设计方法基于需求分析阶段得到的系统数据需求,设计一个描述系统概念数据关系的数据模型,用于反映系统的数据需求。集中式方法要求所有概念数据模型设计工作都必须由具有较高水平的数据库设计者完成。视图综合设计由一个视图设计阶段和一个视图合并阶段组成,它不要求应用需求的合并。在视图设计阶段,设计者根据每个应用的需求,独立地为每个用户和应用设计一个概念数据库模式,这里每个应用的概念数据库模式都称为视图。视图设计阶段完成后,进入到视图合并阶段,在此阶段设计者把所有视图有机地合并成一个统一的概念数据库模式,这个最终的概念数据库模式支持所有的应用。第五章1单选题CCC