(1)授权
grant的一般格式为:grant<权限> on <对象类型> to <用户>
其语义是将指定操作对象的指定操作权限授予指定的用户;
不同对象类型允许的操作权限
例如:把查询student权限授权给用户U1;
Grant select on table student to U1;
(2)收回权限
revoke格式:revoke <权限> on<对象类型> from <用户>
例如:把用户U4修改学生学号的权限收回
Revoke update(sno) on table student from u4;
超键(super key)、候选键(candidate key)和主键(primary key)的区别?
超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键
候选键(candidate key):不含有多余属性的超键称为候选键
主键(primary key):用户选作元组标识的一个候选键程序主键
比如一个小范围的所有人,没有重名的,考虑以下属性
身份证 姓名 性别 年龄
身份证唯一,所以是一个超键
姓名唯一,所以是一个超键
(姓名,性别)唯一,所以是一个超键
(姓名,性别,年龄)唯一,所以是一个超键
--这里可以看出,超键的组合是唯一的,但可能不是最小唯一的
身份证唯一,而且没有多余属性,所以是一个候选键
姓名唯一,而且没有多余属性,所以是一个候选键
--这里可以看出,候选键是没有多余属性的超键
考虑输入查询方便性,可以选择 身份证 为主键
也可以 考虑习惯 选择 姓名 为主键
--主键是选中的一个候选键
封锁粒度与系统的并发度成反比。
试述事务的四个性质,并说明每一个性质由DBMS的哪个子系统实现?每一个性质对数据库系统有什么益处?
答:原子性:一个事务对数据库的所有操作,是一个不可分割的工作单元,这些操作要么全部执行,要么什么也不做(由DBMS的事务管理子系统来实现);
一致性:一个事务独立执行的结果,应(由DBMS的完整性子系统执行测试任务);
隔离性(由DBMS的并发控制子系统实现);
持久性(由DBMS的恢复管理子系统实现的)。
6.9 数据库的并发操作会带来哪些问题?如何解决?
答:丢失更新问题;度脏数据问题;不可重复读问题。
解决的方法是用封锁机制。
6.11 为什么x锁要保留到事务终点,而s锁可随时解除?
答:在一个事务上对数据加上x锁后,并且对数据进行了修改,如果过早的解除x锁,有可能使其他事物读了未提交的数据,引起丢失其他事务的更新;由于s锁只允许读数据,因此解除s锁的操作不必等到事务的结束,可随时根据需要接触s锁。
6.12 什么是封锁粒度?封锁粒度的大小对并发系统有什么影响?
答:封锁对象的大小称为封锁粒度。
封锁粒度与系统的并发度和并发控制的开锁密切相关,封锁的粒度越大并发度也就越小,同时系统的开销也就越小;相反,封锁粒度越小,并发度就越大,系统的开销也就越大。
删除参照关系的元组时,对依赖关系有哪些影响?修改参照关系的主键时,对依赖关系有哪些影响?
答:1、删除参照表中元组时的考虑:
No action:对依赖表没有影响。
Cascade:将依赖表中所有外键值与参照表中要删除的主键值相对应的元组一起删除。
Restrict:只有当依赖表中没有一个外键值与要删除的参照表中主键值相对应删除。
Set null:删除参照表中元组时,将依赖表中所有与参照表中被删除的主键值相对应的外键值均置为空。
Set default:删除参照表中元组时,将依赖表中所有与参照表中被删除的主键值相对应的外键值均置为预先定义好的默认
值。
2、 修改参照表中主键时的考虑:
No action:对依赖表没有影响。
Cascade:将依赖表与参与表中要修改的主键值相对应的所有外键值一起修改。
Restrict:只有当依赖表中没有外键值与参照表中要修改的主键值相对应时,系统才修改参照表中主键值,否则拒绝此修改操作。
Set null:修改参照表中主键时,将依赖表中所有与这个主键值相对应的外键值均置为空值。
Set default:修改参照表中主键时,将依赖表中所有与这个主键值相对应的外键值均置为预先定义好的默认值。
7.1 SQL Server 2000的版本有哪四种?各自的适用范围是什么?
答:①企业版:作为生产数据库服务器使用。
②标准版:作为小工作组或部门的数据库服务器使用。
③个人版:供移动的用户使用,这些用户又是从网络上断开,但所运行的应用程序需要SQL Server数据存储。
④开发版:供程序员来开发将SQL Server 2000用作数据存储的应用程序。只能将开发版作为开发和测试系统使用,不能作为生产服务器使用。
8.2PowerBuilder 9.0的开发空间有那三个层次?
答:工作空间、目标和库文件;
1.在面向对象技术中有哪些基本数据类型?有哪些复合数据类型?
基本数据类型:浮点型,字符,字符串,布尔型,枚举型。
复合数据类型:行类型,数组类型,列表类型,包类型,集合类型。
概化:从子类到超类的抽象化过程。
特化:从超类到子类的具体化过程。
聚合表达了成分对象和聚合对象之间的“is part of”(一部分)的联系,聚合实际上是一种较强的形式的关联联系,在类图中,用空的菱形表示。
复合:一种较强形式的聚合,用实心菱形表示。
9.ODBC技术有什么作用?其卓越贡献是什么?
ODBC为应用程序提供了一套CLI函数库和基于DLL的运行支持环境。
CLI:Call-Level Interface,调用层接口
DLL:Dynamic Link Library,动态链接库
ODBC的卓越贡献是使用应用程序具有良好的互用性和可移植性,并且具备同时访问多种DBS的功能,从而克服了传统数据库应用程序的缺陷。对用户来说,ODBS驱动程序屏蔽掉了不同DBS的差异。
核心SQL的四个组成部份:
数据定义语言(DDL)
数据操作语言(DML)
数据控制语言(DCL)
嵌入式SQL语言的使用规则
DB是指数据的集合
概念模式是全局数据视图
12. 对关系模式进行分解时,要使分解既保持函数依赖、又具有无损失连接性,在下属范式中
最高可以达到()B. 3NF 答案:B
数据库的完整性是指(数据的正确性)
关系模型的完整性规则是 实体完整规则、参照完整性规则、用户定义的完整性规则
DBA监视DB中数据安全性的工具是_DD(数据字典)
数据库体系结构可分为内部集 概念级 外部级_三组。
简述SQL的组成。
答案:SQL主要由四部分组成,即数据定义、数据操纵、数据控制和嵌入SQL的使用规定。数据定
义部分也称为“SQL DDL”用于定义SQL模式、基本表、视图和索引。数据操纵部分也称为“SQL
DML”,分成数据查询和数据更新两类,其中数据更新又分为成插入、删除和修改三种操作。数
据控制部分包括对基本表和视图的授权、完整性规则的描述、事务控制等内容。嵌入式SQL的使
用规定包括三部分:(1)在宿主语言的程序中SQL语句与宿主语言语句的区分;(2)允许嵌入的
SQL语句引用宿主语言的程序变量;(3)用游标机制协调SQL的集合处理方式与宿主语言单记录处理方式
最常见的数据库设计方法有哪几种?
答案:(1)视图模型化及视图汇总设计方法;
(2)关系模式的设计方法;
(3)新奥尔良(New Orleans)设计方法;
(4)基于E-R模型的数据库设计方法;
(5)基于3NF的设计方法;
(6)基于抽象语法规范的设计方法;
(7)计算机辅助数据库设计方法。
若属性X函数依赖于属性Y时,则属性X与属性Y之间具有( B )
A.一对一联系 B.一对多联系
.SQL的基本表约束主要有三种形式:候选键定义、外键定义、__域______定义。
简述关系代数表达式的启发式优化规则。
早选择,早投影,减少笛卡尔积时记录的规模,笛卡儿积尽可能的与选择、投影合并到一起操作。
1,第一范式
定义:如果一个关系模式R的所有属性都是不可分的基本数据项,则称其是第一范式;
2,第二范式
定义:如果关系模式R是属于第一范式,并且每一个非主属性都完全函数依赖于R的码;
2NF就是允许关系模式的属性之间有这样的函数依赖X->Y,其中X是码的真子集,Y是非主属性。
3,第三范式
解释:定义证明,如果R属于3NF,则R的每一个非主属性既不部分函数依赖于候选码,也不传递函数依赖于候选码。第三范式在第二范式的基础上加了传递依赖这个条件;
即是:关系模式没有任何非主属性对码传递函数依赖或部分依赖,则其就是属于第三范式;
4,BC范式(BCNF)
决定集:唯一确定一个元组的属性集合;
解释:在关系模式R中,如果每一个决定属性集都包含候选码,则R属于BCNF;
BCNF的关系模式都有如下三个性质:
(1)所有非主属性都完全函数依赖于每个候选码。(其为第二范式)
(2)所有非主属性都完全函数依赖于每个不包含它的候选码。
(3)没有任何属性完全函数依赖于非码的任何一组属性。
结论:如果R只有一个候选码,且R属于3NF,R必为BCNF。
这里我们可以知道一个好的关系模式,其码的属性具有唯一性,但这也不确定,但是一定要唯一确定出该元组。这也是确定一个关系模式的好坏的基本依据。
在二元关系模式R(U,F)中,X、Y都是单一属性,则R最高可以达到(BCNF)
层次模型的特点是_记录之间的联系通过指针实现,查询效率较高。
解除死锁的方法可以用事务依赖图的形式测试系统中是否存在死锁,一旦发现死锁
,则只能抽出正在等待中的某一个事务作为牺牲品,将其撤消,作回退操作,也解除他的所有封
锁,恢复到事务的初始状态。
6. 简述SQL的四个组成部分的内容。
答案:SQL的四个组成部分的内容为:数据定义、数据操纵、数据控制、嵌入式SQL规则。
10. 简述数据库恢复的几种方法。
答案:数据库恢复的几方法:
(1)定期对整个数据库进行复制与转储;
(2)建立日志文件;
(3)当故障发生后,使用日志文件对数据库进行恢复
数据库中全体数据的整体逻辑结构描述称为 概念模式
3. 数据库用户有。_答案:DBA、专业用户、应用程序员、最终用户
10. ___和___,为我们进行优化设计提供了理论依据。答案:关系规范化理论关系分解方法
8. 试叙述DBMS对数据库的保护作用。
答案:DBMS对数据库的保护主要通过四个方面实现:
(1)数据库的恢复:在数据库被破坏或数据不正确时,系统有能力把数据库恢复到正常的状态;
(2)数据库的并发控制:当多个用户同时对同一个数据进行操作时,可能会破坏数据库中数据
,或者用户读了不正确的数据,并发控制子系统能防止错误发生,正确处理好多用户、多任务环
境下的并发操作;
(3)数据库的完整性控制:保证数据库中数据及语义的正确性和有效性,防止任何对数据造成错
误的操作;
(4)数据库的安全性控制:防止未经授权的用户蓄谋或无意地存取数据库中的数据,以免数据的
泄漏、更改或破坏。
10. 试比较集中式DBS、分散式DBS和分布式DBS。
答案:集中式数据库系统是指所有的工作都由一台计算机完成。它的优点在于数据集中管理,减
少了数据冗余,应用程序和数据之间有较高的独立性。缺点在于大型数据库系统的统计和操作都
比较复杂,系统显得不灵活而且安全性也较差。分散式数据库系统是指采用将数据分散的方法
,把数据库分成多个,建立在多台计算机上。这种系统中,数据库的管理、应用程序的研制等都
是分开并相互独立的,它们之间不存在数据通信联系。分布式系统是在集中式系统的基础上发展
而来的,它是指通过网络通信把分散在各处的数据库系统连接起来。它兼有集中式和分散式的优
点。这种系统有多台计算机组成,各计算机之间有通信网络相互联系着。
.设R是一个关系模式,F是R上的一个FD集,R分解成数据库模式ρ={R1,…,RK}。如果对R中满足F的每一个关系r,都有r=(r)(r)…(r),则称这个分解ρ是( A ) A.无损分解
19.SQL数据库中表的三种类型有__基本表______、视图和导出表。
2.DBS中用于安全性目的的数据库日志称为__审计追踪______。
31.设有关系R(A,B,C)和S(D,E,A),其中A是R的主键和S的外键,为了不破坏参照完整性,当修改R中的A值时,对S中的A值可能有几种修改?
NO ACTION:对依赖表没影响,
CASCADE:对应外键值一起修改,
RESTRICT:只有当依赖表中没有对应的外键值时才能修改,否则拒绝修改,
SET NULL:对应外键值全置空,
SET DEFAULT:对应外键值全置为预设的默认值。
简述权限的定义及权限的种类。
用户使用数据库的方式称为权限,权限有两种:访问数据的权限和修改数据结构的权限。访问数据的权限有四个:增、删、查、改
修改库结构的权限有四个:索引、资源、修改、撤销
试用关系代数查询计算机系的学生姓名和年龄。
Π Sname,Age (σ dept=’计算机’(S))
在对象联系图中,双向箭头()表示( D.两个属性之间值的联系
完成关系模式设计是在数据库设计的( 逻辑设计阶段
23.SQL中把完整性约束分成三大类:域约束、基本表约束和______断言__。
实体完整性规则是指关系中的元组在组成主键的属性上不能有空值
(1)INSERT、DELETE、UPDATE 语句,以及查询结果肯定是单元组时的SELECT 语
句,都可以直接嵌入到主程序中使用,不必涉及到游标。
(2)当SELECT 语句查询结果是多个元组时,必须使用游标
事务的原子性、一致性、隔离性、持久性分别由DBMS 的事务管理、完整性、并发控
制、恢复管理子系统实现。
.在SQL/CLI中,宿主程序与数据库交互过程中有哪几个重要记录? 环境记录、连接记录、语句记录、描述记录。
35.简述DB驱动程序的主要任务。
(1)建立应用程序与数据源的连接;(2)向数据源提交用户请求执行的SQL 语句;
(3)完成数据源发送,接收数据格式和类型转换;(4)把处理结果返回应用程序;
(5)将执行过程中DBS 返回的错误转换成ODBC 定义的标准错误代码,并返回给应
用程序;(6)根据需要定义和使用光标