陶宏才《数据库原理和设计》第3版课后习题答案解析教学内容
数据库原理及应用(第3版)---全部习题new

数据库原理及应用(第三版)钱雪忠等主编北京邮电大学出版社2010.05第第11章章 绪绪论论一、选择题1、A2、A3、A4、A5、B6、C7、C8、A9、A10、C1、( )是位于用户与操作系统之间的一层数据管理软件。
数据库在建立、使用和维护时由其统一管理、统一控制。
A .DBMSB .DBC .DBSD .DBA2、文字、图形、图像、声音、学生的档案记录、货物的运输情况等,这些都是( )A .DATAB .DBSC .DBD .其他3、目前( )数据库系统已逐渐淘汰了网状数据库和层次数据库,成为当今最为流行的商用数据库系统。
A .关系B .面向对象C .分布D .对象-关系4、( )是刻画一个数据模型性质最重要的方面。
因此在数据库系统中,人们通常按它的类型来命名数据模型。
A .数据结构B .数据操纵C .完整性约束D .数据联系5、( )属于信息世界的模型,实际上是现实世界到机器世界的一个中间层次。
A .数据模型B .概念模型C .非关系模型D .关系模型6、当数据库的( )改变了,由数据库管理员对( )映象作相应改变,可以使( )保持不变,从而保证了数据的物理独立性。
(1)模式 (2) 存储结构 (3)外模式/模式 (4)用户模式 (5)模式/内模式A .(1)和(3)和(4)B .(1)和(5)和(3)C .(2)和(5)和(1)D .(1)和(2)和(4)7、数据库的三级体系结构即子模式、模式与内模式是对( )的三个抽象级别。
A .信息世界B .数据库系统C .数据D .数据库管理系统8、英文缩写DBA 代表( )A .数据库管理员B .数据库管理系统C .数据定义语言D .数据操纵语言9、模式和内模式( )。
A .只能各有一个B .最多只能有一个C .至少两个D .可以有多个10、在数据库中存储的是( )。
A.数据 B.信息 C.数据和数据之间的联系 D.数据模型的定义二、填空题1、数据库就是长期储存在计算机内_有组织的__、_可共享__的数据集合。
数据库第三版课后习题答案

数据库第三版课后习题答案数据库第三版课后习题答案在学习数据库的过程中,课后习题是巩固知识的重要方式。
本文将为大家提供数据库第三版课后习题的答案,希望对大家的学习有所帮助。
第一章:数据库基础1. 数据库是什么?答:数据库是一个存储、管理和操作数据的集合。
它可以用来存储和检索大量数据,并提供数据的安全性和完整性。
2. 数据库管理系统(DBMS)的作用是什么?答:DBMS是一种软件,用于管理数据库。
它提供了对数据库的访问和操作,包括数据的增删改查、数据安全性和完整性的控制、数据备份和恢复等功能。
3. 数据库系统的组成部分有哪些?答:数据库系统由数据库、数据库管理系统和应用程序组成。
数据库是存储数据的仓库,数据库管理系统用于管理和操作数据库,应用程序用于访问和处理数据库中的数据。
4. 什么是关系型数据库?答:关系型数据库是一种基于关系模型的数据库。
它使用表格(称为关系)来组织和存储数据,每个表格包含行和列,行表示记录,列表示属性。
第二章:SQL基础1. SQL是什么?答:SQL(Structured Query Language)是一种用于管理关系型数据库的语言。
它可以用来创建、修改和查询数据库中的数据。
2. SQL语句分为哪几类?答:SQL语句分为数据定义语言(DDL)、数据操作语言(DML)、数据查询语言(DQL)和数据控制语言(DCL)四类。
3. 什么是DDL语句?举例说明。
答:DDL语句用于定义数据库的结构和模式,包括创建表格、修改表格结构、删除表格等。
例如,创建表格的语句如下:CREATE TABLE student (id INT PRIMARY KEY,name VARCHAR(50),age INT);4. 什么是DML语句?举例说明。
答:DML语句用于操作数据库中的数据,包括插入、更新和删除数据。
例如,插入数据的语句如下:INSERT INTO student (id, name, age) VALUES (1, 'Tom', 20);第三章:关系数据库设计1. 什么是关系数据库设计?答:关系数据库设计是指根据实际需求,设计数据库的结构和模式。
数据库原理与应用教程(第三版)第六章课后习题答案

6.学生选课(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)(1)候选码(学号,课程号)(2)该关系模式是第一范式(3)因为存在部分函数依赖关系((学号,课程号)—P—>姓名),所以要进行关系模式的规范化R1(学号,姓名,所在系,性别)主码:学号R2(课程号,课程名,学分)主码:课程号R3(学号,课程号,成绩)主码:(学号,课程号)学号是引用了R1关系模式的外码,课程号是引用了R2的外码因为每个关系模式此时已经是不含有依赖函数关系了,所以也是第三范式了7.学生(学号,姓名,所在系,班号,班主任,系主任)(1)候选码(学号,班号)(2)第一范式(3)因为存在部分函数依赖关系((学号,班号)—P—>姓名),所以要进行关系模式的规范化R1(学号,姓名,所在系,系主任)R2(班号,班主任)R3(学号,班号)(删去)因为每个关系模式此时是含有依赖函数关系了学号—f—>所在系,所在系—f—>系主任所以:R1(学号,姓名,所在系)主码:学号所在系是引用了R3中“所在系”的外码R2(班号,班主任)主码:班号R3(所在系,系主任)主码:所在系8.教师授课(课程号,课程名,学分,授课教师号,教师名,授课时数)(1)候选码(课程号,授课教师号)(2)第一范式(3)因为存在部分函数依赖关系((课程号,授课教师号)—P—>姓名),所以要进行关系模式的规范化(4)R1(课程号,课程名,学分)主码:课程号R2(授课教师号,教师名)主码:教师名R3(课程号,授课教师号,授课时数)主码:(课程号,授课教师号)课程号是引用了R1中的“课程号”的外码,授课教师号引用了R2的“授课教师号”的外码因为每个关系模式此时已经是不含有依赖函数关系了,所以也是第三范式了。
最新陶宏才《数据库原理及设计》第3版课后习题答案

第一章一、解答题1、解释术语:数据、数据库、数据管理系统、数据库系统、数据库应用系统、视图、数据字典。
P19-20数据:是描述现实世界中各种具体事物或抽象概念的、可存储并具有明确意义的信息。
数据库:是相互关联的数据集合。
数据管理系统:是一个通用的软件系统,由一组计算机程序构成。
数据库系统:是一个用户的应用系统得以顺利运行的环境。
数据库应用系统:主要指实现业务逻辑的应用程序。
视图:指不同的用户对同一数据库的每一种理解称为视图。
数据字典:用于存储数据库的一些说明信息的特殊文件。
2、简述数据抽象、数据模型及数据模式之间的关系P26数据模型是数据抽象的工具,是数据组织和表示的方式;数据模式是数据抽象利用数据模型,将数据组织起来后得到的结果;总而言之,数据模式是数据抽象的结果。
3、DBMS应具备的基本功能有哪些?P9数据独立性、安全性、完整性、故障恢复、并发控制4、数据库中对数据最基本的4种操作是什么?P24增加、删除、修改、查询5、评价数据模型的3个要素是什么?P121)能够真实地描述现实系统2)能够容易为业务用户所理解3)能够容易被计算机实现6、数据模型的3个要素是什么?P24数据结构、数据操作、数据约束7、简述SQL语言的使用方式。
P13一般有两种方式:SQL的交互式使用;用户通过开发应用系统与RDBMS交互。
8、在数据库设计时,为什么涉及到多种数据模型?P12因为目前商用化DBMS没有一个能够同时满足3项要求,为此,人们不得不走折中路线,设计一些中间的数据模型。
9、数据库系统中的用户类型有哪些?P28-29最终用户、数据库应用开发人员、数据库管理员、其他与数据库系统有关的人员。
11、简述OLTP与OLAP间的区别。
P42-43OLTP(联机事务处理)主要面向日常的业务数据管理,完成用户的事务处理,提高业务处理效率,通常要进行大量的更新操作,同时对响应时间要求比较高。
OLAP(联机分析处理)注重数据分析,主要对用户当前及历史数据进行分析,辅助领导决策,通常要进行大量的查询操作,对时间的要求不太严格。
完整版陶宏才数据库原理及设计第3版课后习题答案

第一章一、解做题1、解释术语:数据、数据库、数据治理系统、数据库系统、数据库应用系统、视图、数据字典.P19-20数据:是描述现实世界中各种具体事物或抽象概念的、可存储并具有明确意义的信息.数据库:是相互关联的数据集合.数据治理系统:是一个通用的软件系统,由一组计算机程序构成.数据库系统:是一个用户的应用系统得以顺利运行的环境.数据库应用系统:主要指实现业务逻辑的应用程序.视图:指不同的用户对同一数据库的每一种理解称为视图.数据字典:用于存储数据库的一些说明信息的特殊文件.2、简述数据抽象、数据模型及数据模式之间的关系P26数据模型是数据抽象的工具,是数据组织和表示的方式;数据模式是数据抽象利用数据模型,将数据组织起来后得到的结果;总而言之,数据模式是数据抽象的结果.3、 DBMS应具备的根本功能有哪些P9数据独立性、平安性、完整性、故障恢复、并发限制4、数据库中对数据最根本的4种操作是什么P24增加、删除、修改、查询5、评价数据模型的 3个要素是什么P121〕能够真实地描述现实系统2〕能够容易为业务用户所理解3〕能够容易被计算机实现6、数据模型的3个要素是什么P24数据结构、数据操作、数据约束7、简述SQL语言的使用方式.P13一般有两种方式:SQL的交互式使用;用户通过开发应用系统与RDBMS交互.8、在数据库设计时,为什么涉及到多种数据模型P12由于目前商用化 DBMS没有一个能够同时满足3项要求,为此,人们不得不走折中路线,设计一些中间的数据模型.9、数据库系统中的用户类型有哪些P28-29最终用户、数据库应用开发人员、数据库治理员、其他与数据库系统有关的人员. 11、简述 OLTP与OLAP间的区别.P42-43OLTP联机事务处理〕主要面向日常的业务数据治理,完成用户的事务处理,提升业务处理效率,通常要进行大量的更新操作,同时对响应时间要求比较高.OLAP眠机分析处理〕注重数据分析,主要对用户当前及历史数据进行分析,辅助领导决策,通常要进行大量的查询操作,对时间的要求不太严格.二、单项选择题1、〔 A 〕不是SQL语言的标准.P156A.SQL-84B.SQL-86C.SQL-89D.SQL-922、〔 D 〕数据模型没有被商用 DBM S实现.P26A.关系模型B.层次模型C.网状模型D.E-R模型3、〔 C卬是数据模型应满足的要求.P12A.真实描述现实世界B.用户易理解C.有相当理论根底D.计算机易实1.一个数据库系统设计中,概念模式只有一个,而外模式那么可有多个.〔/〕 P112.每一种DBMS 的实现,均是建立在某一种数据模型根底之上.〔/〕 P7 二,某学院有根本实体集:系、教师、学生和课程.它们各有属性:系:系编号、系名、位置课程:课程号、课程名称、开课学期学生:学生学号、学生姓名、性别、地址教师:员工号、教师姓名、办公室有如下语义设定每个系有一位系主任,有多位教师; 一个教师仅在一个系任职; 每个系开设多门不同课程;每门课程各由多位教师授课;一位教师可教多门课程;一个学生可以在不同的系选修多门课程.P90 一、简做题4、〔 B 〕最早使用 A.DB2C.Oracl e SQL 语言.P156B. SystemR D.Ingres1.名词解释(1 )实体,实体型,属性,键,联系,联系型,二元联系和三元联系;(P55-58)实体:是现实世界或客观世界中有别于其他对象的对象实体型:是同类实体的集合属性:是实体型的特征或者性质键:具有唯一标识的一个或一组属性联系:是两个或多个的实体间的关联联系型:相似的一组联系二元联系:两个实体间的联系三元联系:三个实体间的联系(2 ) 1 : 1联系型,1: n联系型和m:n联系型;P59设联系型R关联实体A和B,如果A中的一个实体只与 B中的一个实体关联,反过来, B中的一个实体也只与 A中的一个实体关联,称 R为一对一联系型.(3 )键约束和参与约束.P61-62键约束:一个联系 R的实例中,一个关联的实体 A最多只出现在一个联系实例中;参与约束:是实体和联系之间的约束,即实体型中的实体如何参与到联系中.(4 )子类,超类,演绎,归纳和聚集; P67-69将实体分成子类,最上层为超类,下层即为子类;先定义子类,再定义超类,特殊到一般的方法为归纳先定义超类,再定义子类,一般到特殊的方法为演绎将联系和该联系所关联的实体一起作为一个高层实体来对待,该高层实体就是聚集2.简述属性按结构的分类,以及按取值的分类.P55按结构分:简单属性、复合属性、子属性按取值分:单值属性、多值属性、导出属性、空值属性3.一般情况下,联系用什么来唯一标识P57由所参与实体的键共同唯一确定4.在开发较大型的数据库应用系统中,为什么会涉及到多种数据模型P53由于目前商用化DBMS没有一个能够同时满足3项要求,为此,人们不得不走折中路线, 设计一些中间的数据模型.P1534、 SQL-92标准支持的完整性约束是否一定会在SQL Server中实现举例说明.P99不一定,例如:断言是SQL-92标准支持的,但SQL Server就不支持断言;触发器是SQL-92 标准不支持的,但 SQL Server支持断言;5、SQL Server中规那么的目的.P103当该列值变化时,RDBMS将检查变化的值是否在该规那么规定的范围内,如是的,那么接受新列值,否那么,拒绝该列值,并返回该列值违反的规那么名称及相关信息.6、SQL Server中在定义某些约束时分列级与表级,其分类的原那么是什么针对的是表中的一列还是多列7、简述外键约束定义的条件.P106-107定义外键约束的列,必须是另一个表中的主键或者候选键8、一张表上可定义的触发器个数是多少P109主表只需2个触发器:’删除’和’修改’触发器从表也只需2个触发器:’插入’和’修改’触发器9、简述关系代数的根本操作符.P132SELECTION^〕, PROJECTION® 影〕,UNION〔并或者联合〕,INTERSECTION〕,DIFFERENCE〕, CROSS PRODUCT^〕10、关系代数中对结果有重复元组时,如何处理 P134去掉重复元组,SQL中用 DISTINCT11、简述联结的分类.P137条件联结〔condition join〕、等联结〔equijoin〕自然联结〔natural join〕、外联结〔outer join〕12、简述关系运算的种类.P148TRC〔tuple relational calculus〕元组关系运算DRC〔domain relational calculus〕域关系运算四、设有如下3个关系:S〔Sid命号〕,Sname〔姓名〕,Age〔年龄〕,Sex〔性别〕〕SC〔Sid律号〕,Cid〔课程号〕,Score〔成绩〕〕C 〔Cid〔课程号〕,Cname〔课程名〕,Teacher〔教师〕〕试用关系代数式表达以下查询,并且写出前4个的SQL查询语句:1、检索LIU老师所授课程的课程号和课程名.select Cid, Cname from C where Teacher = ' LIU'2、检索年龄大于 23岁的男学生的学号和姓名.select Sid, Sname from S where Age>23 and Sex = ' male'3、检索学号为S3学生所学课程的课程名与任课教师名.select C. Cname, C. Teacher from C,SC where C.Cid = SC.Cid and S.Sid = S3'4、检索至少选修 LIU老师所授课程中一门课的女学生的姓名.select Sname from S where Sid in 〔select Sid from SC where Cid in 〔select Cid from C whereTeacher= ' LIU'〕〕S〔Sid命号〕,Sname〔姓名〕,Age〔年龄〕,Sex〔性别〕〕SC〔Sid律号〕,Cid〔课程号〕,Score〔成绩〕〕C〔Cid佩程号〕,Cname〔课程名〕,Teacher〔教师〕〕P2151、简述SQL语言的使用方式.P13一般有两种方式:SQL的交互式使用;用户通过开发应用系统与RDBMS交互.2、完整的SQL包括哪三个子语言分类P157数据定义子语言〔DDL〕、数据操纵子语言〔DML〕、数据限制子语言〔DCL〕3、简述SQL语言中定义的数据库与第一章中的数据库概念之异同.P159SQL语言定义的是指存储空间,用于存放相关数据集合,这个是理论概念具体化,与第 1章的应用概念上的有差异4、简述标准的SQL语言与实际数据库产品中的SQL数据库语言的关系.P157-158绝大多数RDBMS产品不是完全支持 SQL-92标准的;RDBMS产品的SQL语言,也有可能是 SQL-92中所没有的功能或特性.5、 SQL语言对数据库对象的定义使用哪3个SQL命令关键字 P158CREATED〕, DROP删除〕,ALTER^改〕6、简述定义索引的目的.P166-167利用索引,系统可以较快地在磁盘上定位所需数据,从而加快了数据查询速度.8、简述T-SQL中游标的作用.P191既为SQL Server的存储过程、触发器和函数提供了按行处理查询结果集合的途径,也为高级编程语言提供了按行处理查询结果集合的途径.9、简述T-SQL中存储过程的好处.P1941〕执行速度快2〕可用于实现经常使用的数据操作3〕实现较复杂的完整性约束4〕可在程序中被反复调用,有助于程序的模块化5〕有助于提供平安性6〕实现复杂、敏感事务的自动化7〕减少网络流量第三章关系数据库系统RDBS.简做题1.表问数据完整性的实现方式⑴外键约束,即在从表上定义外键约束.⑵利用触发器,即主表的触发器维护主表到从表方向的数据完整性,从表的触发器维护从表到主表方向的参照完整性.2.唯一限制的要求唯一约束针对候选键而言,并且值唯一,允许有且只有一个空值.3.SQL-92B准支持的完整性限制是否一定会在SQL SERVER实现,举例说明?不一定.比方 SOL SERVE不支持“断言〞,虽然SOL-92标准是支持的.4.SQL SERVER规那么的目的指明表中某一列的取值范围.5.SQL SERVER在定义某些限制时,分列级与表级,其分类的原那么是什么列级方式是:在要定义约束的列本身定义完后,紧接其后定义其约束.表级方式:表中所有的列都定义往后,再定义所要的约束.6.外键限制定义的条件定义外键的列必须是另一个表中的主键或候选键.7.主键和候选键分别通过什么限制来维护各自的完整性⑴主表到从表方向,表示“主表〞中的主键值在修改或删除是,“从表〞中与该主键值相同的外键值可“级联〞修改或删除;或者“禁止〞“主表〞主键值的修改和删除.⑵从表到主表方向,表示“从表〞中的外键值在插入和修改时,其值应“参照〞“主表〞中的主键值.8.关系代数的根本操作符selection〔选择〕:o-projection〔投影〕:兀union 〔并〕intersection (交)difference (差)cross-product (积)9. 关系代数中对结果有重复元组时,如何处理?只保存其中一个,另外的被去掉.10. 连接的分类条件连接连接自然连接外连接:左外连接,右外连接,全外连接二.单项选择题1. (①)不是关系代数的根本操作Intersection2. (③)用唯一限制来约束'①主键②外键 3. (②)与“列〞不同义.①字段②元组 三.判断题(正确打错误打X)1. ( V )关系代数中的改名操作既可用于改名也可用于存放临时关系模式结果.① Selection2D Projection ③Join④ ③候选键④简单键③域④届性2.( X )对主表,插入操作可能会违背参照完整性限制, 但删除和更新不会3.( X )等连接是自然连接的特例.4.( V )关系代数是与关系模型有关的查询语言.第四章SQL查询语言一.简做题1.SQL语言的使用方式既可以独立的交互式使用,也可以通过与宿主语言结合起来,嵌入式使用.2.完整的SQL包括哪三个子语言分类数据定义子语言DDL数据操纵子语言DML数据限制子语言DCL3.SQL语言中定义的数据库与第一章中的数据库概念之异同SQL语言中定义的数据库:在中/大型数据库系统中,数据库是一个存储空间,用丁存放数据库中的数据库对象,包括表、视图、索引、存储过程、触发器、与数据库平安性有关的限制机制以及其它对象等. 第一章中的数据库(Database, DB)是相互关联的数据集合.相同点:都包含有对数据进行组织、治理等操作的意思;不同点:SQL语言中定义的“数据库〞,是指存在丁物理磁盘上的一个存储空间,用丁存放相关数据集合;而第一章中的“数据库〞,是一个宽泛的概念, 可以说它是一种组织、治理数据的手段、方法,也可以说它是一个实际的产品.4.标准的SQL语言与实际数据库产品中的SQL数据库语言的关系绝大多数RDBM笋品并不完全支持标准SQL也就是SQL中的某些功能在实际数据库产品中可能没有得到支持. 反过来,实际RDBM样品的SQL语言也有可能出现标准SQL中没有出现的功能或特性,也就是商用RDBMSK现了超越了SQL标准的功能和特性,而且这种差异也会在命令和语法上得到表达.5.SQL语言对数据库对象的定义使用哪三个SQL命令关键字Create (创立)、Alter (修改)、Drop (删除)6.定义索引的目的定义的索引由谁使用索引是数据位置信息的关键字表,利用索引,系统可以较快地在磁盘上定位所需数据,而不需要从磁盘上从头到尾或从后向前, 一个数据一个数据地匹配和查找,从而加快数据查询的速度.用户不能在取数据时选择索引,索引的选择是由系统自动进行的.也就是索引建立后,有DBMS艮据需要自动选择使用.7.在什么情况下,SELEC查询中的ORDER B奇句、COMPUTEFW COMPUTER BY子句可以不要ORDER B仔句为排序而设置、COMPUTER句为整个结果汇总而设置、COMPUTER 咐为分组统计而设置.SELECT...INTO不能与COMPUTE^使用;当用UNION寸,各个SELECTS 句不能有ORDER BY句、COMPUTER^.8.在SELECT^询中,哪三个子句可以实施对数据的过滤或筛选WHERE于对FROMF句结果设置过滤条件;GROUP BY于对WHERE句的结果分组;HAVING!于对分组数据集合的再筛选.9.触发器在维护表问数据完整性时与外键约束的差异10.游标的作用为SQL Serve的储存过程,触发器,和函数,也为高级编程语言提供了按行处理查询结果集合的途径.11.使用存储过程的好处1:可以查看某个〔或所有〕数据库的相关信息,如不带后面的参数“数据库名〞,那么表示查看所有数据库的信息,否那么表示查看指定的数据库信息.2:可以用来修改数据库名.二.单项选择题1.某WHERE子句中有'X%[〞-f]_[4-8]'申表达,以下〔C 〕可以正确匹配.A. XTa_9B. XTb_8C. XTTTr7D. XSSSe32.视图中的数据来自所基于的〔C 〕.A.列B.行C.表D.自身。
数据库原理与应用示范系统(第三版)习题与答案

习题一1. 试回答下列问题(1)什么是数据库?(2)什么是数据库管理系统?(3)什么是数据库系统?答:(1)数据库是被长期存放在计算机内,有组织的,统一管理的相关数据的集合。
(2)数据库管理系统(Data Base Management System, 简称DBMS),是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。
(3) 数据库系统(DBS)通常是指带有数据库的计算机应用系统。
DBS是一个实际可运行的,按照数据库方法存储、维护和向应用系统提供数据支持的系统,它是数据库、硬件、软件和数据库管理员(DBA)的集合体。
2. 计算机数据管理经历了哪几个阶段?答:数据管理技术的发展经历了三个阶段:人工管理阶段、文件系统阶段、数据库系统阶段。
3. 试述文件系统的缺点。
答:(1)数据共享性差,冗余度大。
(2)数据不一致性。
(3)数据联系弱。
4. 试述数据库系统的特点。
答:(1)采用复杂的数据模型表示数据结构。
(2)有较高的数据独立性。
(3)数据的共享性高,冗余度低,易扩充。
(4)数据由DBMS统一控制和管理。
5. 试述概念模型的作用。
答:概念模型是独立于计算机系统的数据模型,它完全不涉及信息在计算机系统中的表示,只是用来描述某个特定组织所关系的信息结构。
概念模型用于建立信息世界的数据模型,强调其语义表达能力,概念应该简单、清晰、易于用户理解,它是现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具。
这一模型中最著名的是“实体联系模型”。
6. 解释下列概念:内模式、模式、外模式、DDL、DML答:内模式也称存储模式(Storage Schema)。
它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
一个数据库只有一个内模式。
模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
数据库原理与设计 陶宏才

26
数据库原理及设计
Dr. Yan Zhu
其他的约束 – 检查限制
• 域限制、主键限制、唯一限制和外键限制是关系
数据模型中最基本的限制,大多数商用系统都支 持他们。其他还有更一般的限制,如:
1. 2.
检查限制(Check Constraint,亦称“表限制”) 检查某一列值是否在某一取值范围之内; 表中某几列是否满足指定的条件。 与单个表有关。
班级表
班号 班号 计算机 200001 班名 计1 班 人数 50 … …
D.O.B
Peter Bach
2000101
5-101986
计算机 200001
外键 主键/候选键
外键(Foreign Key,FK): A表中的某个属性(组)是B 表中的候选键或主键,则称该属性(组)为A表的外 键。要使B表中的某个属性成为A表的外键,必须确定 该属性为B表的主键或候选键。如何指定?完整性约 9 束的任务。 数据库原理及设计 Dr. Yan Zhu
• 几种完整性约束:域约束、主键约束、唯一约束、外键
约束等。
数据库原理及设计
Dr. Yan Zhu
17
几种完整性约束(1)
• 域限制(Domain Constraint)
每个属性A的值必须是来自域 dom(A)的原子值。 例如,表中某列的数据类型为“整数型”,那么该列 的各记录值就不能是“字符串”。 不必显示指定。 概念:针对主键而言,保证主键的完整性。 要求:主键值必须唯一,且不能为空值。 例如:作者不能作主键。 需要显示指定。(如何指定,以后介绍)
• SQL DML——针对表中数据的操作
1. Insert(插入)
数据库原理与设计答案

数据库原理与设计答案数据库原理与设计答案如下:1. 数据库的概念和特点:数据库是指按照数据结构的特点和数据间的联系,以及数据库管理系统的要求来组织和存储数据的集合。
数据库的特点包括可共享性、减少数据冗余、数据独立性、可控性和持久性等。
2. 数据库的三级模式和数据模型:数据库的三级模式包括外部模式、概念模式和内部模式。
外部模式是用户对数据库的局部观察,概念模式是数据库的全局逻辑结构,内部模式是数据库在存储媒介上的表示方式。
数据模型是对数据、数据联系、数据语义和一致性约束等进行描述的工具,常见的数据模型包括层次模型、网状模型和关系模型。
3. 关系数据库的基本概念和术语:关系数据库是基于关系模型构建的数据库管理系统。
在关系数据库中,数据以表的形式进行组织和存储,表由行和列组成,行表示记录,列表示字段。
表之间通过主键、外键和关联操作建立联系。
4. 数据库设计的步骤和方法:数据库设计的步骤包括需求分析、概念设计、逻辑设计和物理设计。
需求分析阶段主要确定需求和功能,概念设计阶段主要进行概念模式的设计,逻辑设计阶段主要进行关系模式的设计,物理设计阶段主要确定数据库的物理存储结构和索引策略。
数据库设计的方法包括实体-关系(E-R)模型、范式理论和结构化分析等。
5. 数据库查询语言:数据库查询语言是用户和数据库管理系统进行交互的工具,常见的查询语言有结构化查询语言(SQL)。
SQL语言包括数据定义语言(DDL)用于定义数据库结构,数据操作语言(DML)用于对数据进行操作,数据控制语言(DCL)用于用户权限控制。
6. 数据库事务和并发控制:数据库事务是指由一个或多个数据库操作语句组成的逻辑单位,具有原子性、一致性、隔离性和持久性的特点。
并发控制是指多个事务同时执行时如何保证数据的一致性和完整性,常见的并发控制机制包括锁机制、并发许可控制和时间戳机制。
7. 数据库安全性和备份恢复:数据库安全性是指保护数据库不受非法访问、恶意破坏和数据泄露等威胁的措施。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
陶宏才《数据库原理和设计》第3版课后习题答案解析第一章一、解答题1、解释术语:数据、数据库、数据管理系统、数据库系统、数据库应用系统、视图、数据字典。
P19-20数据:是描述现实世界中各种具体事物或抽象概念的、可存储并具有明确意义的信息。
数据库:是相互关联的数据集合。
数据管理系统:是一个通用的软件系统,由一组计算机程序构成。
数据库系统:是一个用户的应用系统得以顺利运行的环境。
数据库应用系统:主要指实现业务逻辑的应用程序。
视图:指不同的用户对同一数据库的每一种理解称为视图。
数据字典:用于存储数据库的一些说明信息的特殊文件。
2、简述数据抽象、数据模型及数据模式之间的关系 P26数据模型是数据抽象的工具,是数据组织和表示的方式;数据模式是数据抽象利用数据模型,将数据组织起来后得到的结果;总而言之,数据模式是数据抽象的结果。
3、DBMS应具备的基本功能有哪些?P9数据独立性、安全性、完整性、故障恢复、并发控制4、数据库中对数据最基本的4种操作是什么? P24增加、删除、修改、查询5、评价数据模型的3个要素是什么? P121)能够真实地描述现实系统2)能够容易为业务用户所理解3)能够容易被计算机实现6、数据模型的3个要素是什么? P24数据结构、数据操作、数据约束7、简述SQL语言的使用方式。
P13一般有两种方式:SQL的交互式使用;用户通过开发应用系统与RDBMS交互。
8、在数据库设计时,为什么涉及到多种数据模型?P12因为目前商用化DBMS没有一个能够同时满足3项要求,为此,人们不得不走折中路线,设计一些中间的数据模型。
9、数据库系统中的用户类型有哪些?P28-29最终用户、数据库应用开发人员、数据库管理员、其他与数据库系统有关的人员。
11、简述OLTP与OLAP间的区别。
P42-43OLTP(联机事务处理)主要面向日常的业务数据管理,完成用户的事务处理,提高业务处理效率,通常要进行大量的更新操作,同时对响应时间要求比较高。
OLAP(联机分析处理)注重数据分析,主要对用户当前及历史数据进行分析,辅助领导决策,通常要进行大量的查询操作,对时间的要求不太严格。
二、单项选择题1、( A )不是SQL语言的标准。
P156A.SQL-84B.SQL-86C.SQL-89D.SQL-922、 ( D )数据模型没有被商用DBMS实现。
P26A.关系模型B.层次模型C.网状模型D.E-R模型3、( C )不是数据模型应满足的要求。
P12A.真实描述现实世界B.用户易理解C.有相当理论基础D.计算机易实4、( B )最早使用SQL语言。
P156A.DB2B.System RC.OracleD.Ingres三、判断题1.一个数据库系统设计中,概念模式只有一个,而外模式则可有多个。
(√ ) P112.每一种DBMS的实现,均是建立在某一种数据模型基础之上。
(√ ) P7 二,某学院有基本实体集:系、教师、学生和课程。
它们各有属性:系:系编号、系名、位置课程:课程号、课程名称、开课学期学生:学生学号、学生姓名、性别、地址教师:员工号、教师姓名、办公室有如下语义设定每个系有一位系主任,有多位教师;一个教师仅在一个系任职;每个系开设多门不同课程;每门课程各由多位教师授课;一位教师可教多门课程;一个学生可以在不同的系选修多门课程。
P90一、简答题1.名词解释( 1 ) 实体,实体型,属性,键,联系,联系型,二元联系和三元联系;(P55-58)实体:是现实世界或客观世界中有别于其他对象的对象实体型:是同类实体的集合属性:是实体型的特征或者性质键:具有唯一标识的一个或一组属性联系:是两个或多个的实体间的关联联系型:相似的一组联系二元联系:两个实体间的联系三元联系:三个实体间的联系( 2 ) 1:1联系型,1:n联系型和m:n联系型;P59设联系型R关联实体A和B,如果A中的一个实体只与B中的一个实体关联,反过来,B中的一个实体也只与A中的一个实体关联,称R为一对一联系型。
( 3 ) 键约束和参与约束。
P61-62键约束:一个联系R的实例中,一个关联的实体A最多只出现在一个联系实例中;参与约束:是实体和联系之间的约束,即实体型中的实体如何参与到联系中。
( 4 ) 子类,超类,演绎,归纳和聚集;P67-69将实体分成子类,最上层为超类,下层即为子类;先定义子类,再定义超类,特殊到一般的方法为归纳先定义超类,再定义子类,一般到特殊的方法为演绎将联系和该联系所关联的实体一起作为一个高层实体来对待,该高层实体就是聚集2.简述属性按结构的分类,以及按取值的分类。
P55按结构分:简单属性、复合属性、子属性按取值分:单值属性、多值属性、导出属性、空值属性3.一般情况下,联系用什么来唯一标识?P57由所参与实体的键共同唯一确定4.在开发较大型的数据库应用系统中,为什么会涉及到多种数据模型?P53因为目前商用化DBMS没有一个能够同时满足3项要求,为此,人们不得不走折中路线,设计一些中间的数据模型。
P1534、SQL-92标准支持的完整性约束是否一定会在SQL Server中实现?举例说明。
P99不一定,例如:断言是SQL-92标准支持的,但SQL Server 就不支持断言;触发器是SQL-92标准不支持的,但SQL Server 支持断言;5、SQL Server中规则的目的。
P103当该列值变化时,RDBMS将检查变化的值是否在该规则规定的范围内,如是的,则接受新列值,否则,拒绝该列值,并返回该列值违反的规则名称及相关信息。
6、SQL Server中在定义某些约束时分列级与表级,其分类的原则是什么?针对的是表中的一列还是多列7、简述外键约束定义的条件。
P106-107定义外键约束的列,必须是另一个表中的主键或者候选键8、一张表上可定义的触发器个数是多少?P109主表只需2个触发器:‘删除’和‘修改’触发器从表也只需2个触发器:‘插入’和‘修改’触发器9、简述关系代数的基本操作符。
P132SELECTION(选择),PROJECTION(投影), UNION(并或者联合),INTERSECTION(交),DIFFERENCE(差),CROSS PRODUCT(积)10、关系代数中对结果有重复元组时,如何处理?P134去掉重复元组,SQL中用 DISTINCT11、简述联结的分类。
P137条件联结(condition join)、等联结(equijoin)自然联结(natural join)、外联结(outer join)12、简述关系运算的种类。
P148TRC(tuple relational calculus)元组关系运算DRC(domain relational calculus)域关系运算四、设有如下3个关系:S(Sid(学号),Sname(姓名),Age(年龄),Sex(性别))SC(Sid(学号),Cid(课程号),Score(成绩))C(Cid(课程号),Cname(课程名),Teacher(教师))试用关系代数式表达下列查询,并且写出前4个的SQL查询语句:1、检索LIU老师所授课程的课程号和课程名。
select Cid, Cname from C where Teacher = ‘LIU’2、检索年龄大于 23岁的男学生的学号和姓名。
select Sid, Sname from S where Age>23 and Sex =‘male’3、检索学号为S3学生所学课程的课程名与任课教师名。
select C. Cname, C. Teacher from C,SC where C.Cid = SC.Cid and S.Sid = ‘S3’4、检索至少选修LIU老师所授课程中一门课的女学生的姓名。
select Sname from S where Sid in (select Sid from SC where Cid in (select Cid from C whereTeacher=‘LIU’))S(Sid(学号),Sname(姓名),Age(年龄),Sex(性别))SC(Sid(学号),Cid(课程号),Score(成绩))C(Cid(课程号),Cname(课程名),Teacher(教师))P2151、简述SQL语言的使用方式。
P13一般有两种方式:SQL的交互式使用;用户通过开发应用系统与RDBMS 交互。
2、完整的SQL包括哪三个子语言分类?P157数据定义子语言(DDL)、数据操纵子语言(DML)、数据控制子语言(DCL)3、简述SQL语言中定义的数据库与第一章中的数据库概念之异同。
P159SQL语言定义的是指存储空间,用于存放相关数据集合,这个是理论概念具体化,与第1章的应用概念上的有差别4、简述标准的SQL语言与实际数据库产品中的SQL数据库语言的关系。
P157-158绝大多数RDBMS产品不是完全支持SQL-92标准的;RDBMS产品的SQL语言,也有可能是SQL-92中所没有的功能或特性。
5、SQL语言对数据库对象的定义使用哪3个SQL命令关键字?P158CREATE(创建),DROP(删除),ALTER(修改)6、简述定义索引的目的。
P166-167利用索引,系统可以较快地在磁盘上定位所需数据,从而加快了数据查询速度。
8、简述T-SQL中游标的作用。
P191既为SQL Server 的存储过程、触发器和函数提供了按行处理查询结果集合的途径,也为高级编程语言提供了按行处理查询结果集合的途径。
9、简述T-SQL中存储过程的好处。
P1941)执行速度快2)可用于实现经常使用的数据操作3)实现较复杂的完整性约束4)可在程序中被反复调用,有助于程序的模块化5)有助于提供安全性6)实现复杂、敏感事务的自动化7)减少网络流量第三章关系数据库系统RDBS一. 简答题1.表间数据完整性的实现方式?2.⑴外键约束,即在从表上定义外键约束。
3.⑵利用触发器,即主表的触发器维护主表到从表方向的数据完整性,从表的触发器维护从表到主表方向的参照完整性。
4.唯一限制的要求?5.唯一约束针对候选键而言,并且值唯一,允许有且只有一个空值。
6.SQL-92标准支持的完整性限制是否一定会在SQL SERVER中实现,举例说明?7.不一定。
比如SOL SERVER不支持“断言”,虽然SOL-92标准是支持的。
8.SQL SERVER中规则的目的?9.指明表中某一列的取值范围。
10.SQL SERVER中在定义某些限制时,分列级与表级,其分类的原则是什么?11.列级方式是:在要定义约束的列本身定义完后,紧接其后定义其约束。
12.表级方式:表中所有的列都定义往后,再定义所要的约束。
13.外键限制定义的条件?14.定义外键的列必须是另一个表中的主键或候选键。