《数据库系统与应用课后习题答案(共2页).doc》由会员分享,可在线阅读,更多相关《数据库系统与应用课后习题答案(共2页).doc(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上第四章完整性约束1什么是数据库的完整性?答:完整性约束是加在数据库模式上的一个具体条件,它规定什么样的数据能够存储到数据库系统当中。若一个数据库实例满足所有的完整性约束,它就是一个符合逻辑的实例。DBMS确保完整性约束条件的定义及检查,以使只有符合逻辑的实例能够存储到数据库中。2数据库的完整性约束条件可分为哪几类?答:按照完整性约束条件作用的对象,可以将其分为4类:类型约束、属性约束、关系变量约束、数据库约束。类型约束是完整性约束的最基础构成,定义属性列对应域的取值范围。属性约束主要规定属性的类型、取值范围、精度等约束条件。关系变量约束定义同一关系内不同元组之间、不同
2、属性间的约束。数据库约束定义多个关系之间应满足的约束条件。3DBMS的完整性控制机制应具有哪些功能?答:DBMS的完整性控制机制应包括:完整性约束的定义、完整性约束的检查和违约反应。4RDBMS在实现参照完整性时需考虑哪些方面?答:RDBMS实现参照完整性时需要考虑:1)外码是否可以接受空值的问题;2)在被参照关系中删除元组时的问题;3)在参照关系中插入元组时的问题;4)修改关系中主码的问题。5在关系系统中,当操作违反实体完整性、参照完整性和用户自定义的完整性约束条件时,一般是如何分别进行处理的?答:对违反实体完整性规则和用户定义的完整性规则的操作,一般是拒绝执行。对违反参照完整性的操作,有两
3、种处理方式:1)拒绝执行;2)接受这个操作,同时执行一些附加的操作,以保证数据库的状态正确。6设数据库中有三个关系:员工表EMP(E#,ENAME,AGE,SEX,ECITY),其属性分别表示员工编号、姓名、年龄、性别和所在城市;公司表COMP(C,CNAME,CITY,MANAGER),其属性分别表示公司编号、公司名称、公司所在城市和管理者的员工编号;工作表 WORKS(E,C,SALARY),其属性分别表示员工编号、公司编号和工资。用SQL 语言创建上述三个表,要求在模式中完成以下完整性约束条件的定义,并为每一个约束命名:(1) 定义每个模式的主码;(2) 定义参照完整性;(3) 定义员工
4、年龄不得超过60岁;(4) 定义员工性别只能在“男”、“女”中取值;(5) 定义一个表级约束,保证每个管理者只能管理一家公司。(6) 定义EMP上的一个表级约束,保证每个职工的薪水不少于1000元;(7) 定义一个断言,保证那些薪水比所在公司的管理者还要高的员工信息是不存在的。答:create table EMP( E# char(8) constraint emp-pk primary key, ENAME char(20) constraint emp-notnull not null, AGE int constraint emp_checkage check(AGE=1000),Constraint work-pk Primary key(E#,C#);Create assertion salarycheck check(Not exists(Select * from works xWhere SALARY = any ( select SALARY from works y Where x.C#=y.C# and y.E#=(Select Manager from compWhere x.C# =comp.C#)专心-专注-专业