1、什么是数据库中数据的逻辑独立性和物理独立性?如何保证?
数据的逻辑独立性和物理独立性是数据库中数据独立性的两个方面。数据独立性是指应用程序与数据之间相互独立,不受影响的性质。
当数据库中数据的总体逻辑结构改变而局部逻辑结构不变时,根据局部逻辑结构编写的应用程序可以不变的特点称之为数据的逻辑独立性。而当数据库中数据的物理结构发生改变时,由于数据库模式结构中的模式/内模式映像的作用,使得数据逻辑结构保持不变从而保证与数据逻辑结构相关的应用程序可以不变的性质称为数据库中数据的物理独立性。
简言之,所谓数据的逻辑独立性和物理独立性就是当数据的逻辑结构或物理结构改变时不影响应用程序改变的性质。它们是由数据库模式结构中的外模式/模式和模式/内模两层映像功能保证的。
2、关系的规范化程度越高越好吗?为什么?
关系的规范化程度不是越高越好。
因为,关系规范化程度越高,关系模式分解越细,分解所得的关系个数越多,当进行数据查询时需要作连接运算的关系个数就越多,连接运算需要耗费很大的系统资源,从而降低数据查询的效率。
3、关系操作的对象和结果是什么?专门的关系运算有哪几种?各有什么特点?
关系操作的对象和结果都是关系,即元组的集合。
专门的关系运算有投影、选择、连接和除四种,投影的特点: ①取消了原关系中的某些列;②去掉重复的元组; ③还可以改变属性的排列次序。选择的特点:①结果关系中所有属性名都是原关系的属性名;②结果关系中各元组都是原关系中的元组。连接运算的特点:连接所得的关系的各个属性都是参加连接的各关系中的属性。连接有可分为内连接、外连接、等值连接、自然连接,外连接又分为左外连接、右外连接、全连接、交叉连接等几种。不同的连接具有不同的特点。除运算是同时在行和列的角度进行的运算,可以看作是关系笛卡尔积的逆运算。
4、E-R模型的组成要素有哪几种?实体间的联系有哪几种?E-R模型向关系模型转化时哪种联系需要转化为独立的关系?
答:E-R模型的组成要素有实体、联系、属性三种,实体间的联系有1:1、1:N、N:M三种。
E-R模型向关系模型转化时只有多对多的联系才有必要转化为独立的关系。
5、数据库的并发操作中可能会出现哪三种问题?一、二、三级封锁协议分别解决什么问题?
答:丢失修改、不可重复读和读“脏”数据三种问题。
一级封锁协议解决丢失更新的问题,二级解决丢失更新和读脏数据的问题,三级解决全部问题。
6、试述SQL查询语句中select子句、from子句、where子句、group by子句、having子句、order by子句的执行次序及其作用?
答:次序:1.FROM取出整个表;2.WHERE筛选符合条件的元组;3.GROUP BY将选出的元组按关键字段分组;4.HAVING筛选符合条件的组;5.SELECT从剩下的组中选择指定的列;6.ORDER BY将选取结果排序。
Where子句的作用是从被查询表中选择符合条件的元组,having子句的作用是从由group by子句所分的组中选择符合条件的组,其条件表达式中包含有集(库)函数。