从1.1.1节的介绍可以看到,在数据库管理系统出现之前,人们对数据的操作是直接针对数据文件编写应用程序实现的,这种模式会产生很多问题。对于1.1.1小节中列举的学生基本信息管理和学生选课管理两个子系统,如果使用数据库技术来管理,其实现方式如图1-4所示。保证数据的安全是通过数据库管理系统的安全控制机制实现的,保证数据的可靠是通过数据库管理系统的备份和恢复机制实现的。......
2025-09-30
正如前面所讲的,使用视图可以简化和定制用户对数据的需求。虽然对视图的操作最终都转换为对基本表的操作,视图看起来似乎没什么用处,但实际上,如果合理地使用视图会带来许多好处。
1.简化数据查询语句
采用视图机制可以使用户将注意力集中在所关心的数据上。如果这些数据来自多个基本表,或者数据一部分来自于基本表,另一部分来自视图,并且所用的搜索条件又比较复杂时,需要编写的SELECT语句就会很长,这时定义视图就可以简化数据的查询语句。定义视图可以将表与表之间复杂的连接操作和搜索条件对用户隐藏起来,用户只需简单地查询一个视图即可。这在多次执行相同的数据查询操作时尤为有用。
2.使用户能从多角度看待同一数据
采用视图机制能使不同的用户以不同的方式看待同一数据,当许多不同类型的用户共享同一个数据库时,这种灵活性是非常重要的。
3.提高了数据的安全性
使用视图可以定制用户查看哪些数据并屏蔽敏感数据。比如,不希望员工看到别人的工资,就可以建立一个不包含工资项的职工视图,然后让用户通过视图来访问表中的数据,而不授予他们直接访问基本表的权限,这样就在一定程度上提高了数据库数据的安全性。(https://www.chuimin.cn)
4.提供了一定程度的逻辑独立性
视图在一定程度上提供了数据的逻辑独立性,因为它对应的是数据库的外模式。
在关系数据库中,数据库的重构是不可避免的。重构数据库的最常见方法是将一个基本表分解成多个基本表。例如,可将学生关系表Student(Sno,Sname,Ssex,Sage,Sdept)分解为SX(Sno,Sname,Sage,)和SY(Sno,SSeX,Sdept)两个关系,这时对Student表的操作就变成了对SX和SY的操作。
这样,尽管数据库的表结构变了,但应用程序可以不必修改,新建的视图保证了用户原来的关系,使用户的外模式未发生改变。
注意:视图只能在一定程度上提供数据的逻辑独立性,由于视图的更新是有条件的,因此,应用程序在修改数据时可能会因基本表结构的改变而受一些影响。
相关文章
从1.1.1节的介绍可以看到,在数据库管理系统出现之前,人们对数据的操作是直接针对数据文件编写应用程序实现的,这种模式会产生很多问题。对于1.1.1小节中列举的学生基本信息管理和学生选课管理两个子系统,如果使用数据库技术来管理,其实现方式如图1-4所示。保证数据的安全是通过数据库管理系统的安全控制机制实现的,保证数据的可靠是通过数据库管理系统的备份和恢复机制实现的。......
2025-09-30
关键字Modify File用以表示按后面的文件说明,在指定的数据库中修改相应数据库文件。下面的语句可在学籍管理数据库增加一个新数据库文件,同时要修改原数据库文件StuFile l的最大文件尺寸为2000 MB。Alter Database StuDataAdd FileModify File又如,如果要删除学籍管理数据库文件StuFile2,则可使用如下命令:Alter Database StuDataRemove File StuFile2......
2025-09-30
下面介绍的优化策略能提高查询的效率,但它们不一定是最优的策略,实际上“优化”一词并不是很确切,用“改进”或“改善”或许更恰当些。即使这样,使用预处理方法执行连接的时间一般仍大大减少。当查询视图时,定义视图的表达式就是公共子表达式的情况。......
2025-09-30
例如,一名学生可以用信息“”描述,这样的一行数据称为一条记录。单看这行数据我们很难知道其确切含义,但对其进行如下解释:张三是9912101班的男学生,1981年出生,计算机系应用软件专业,其内容就是有意义的。因此,数据是信息存在的一种形式,只有通过解释或处理才能成为有用的信息。数据的静态特征包括数据的基本结构、数据间的联系以及对数据取值范围的约束。数据的动态特征是指对数据可以进行符合一定规则的操作。......
2025-09-30
SQL的数据查询语句中包括SELECT,FROM,WHERE,GROUP BY和ORDER BY子句。SELECT语句具有数据查询、统计、分组和排序的功能,其语句表达能力非常强大。查询操作需要的数据源指基本表组,表间用“,”分割。当SELECT子句后的目标列中有统计函数,如果查询语句中有分组子句,则统计为分组统计,否则为对整个结果集统计。交查询操作,操作结果为取<查询1>和<查询2>共有的元组。......
2025-09-30
如果要使用缺省参数创建一个学籍管理数据库StuData,可以使用如下命令:Create Database StuData如果希望为数据库或事务日志指定一个或者多个特定文件,增加一个On Primary子句,列出一个或者多个文件,并可为分配这个文件的空间指定一个可选值,其命令形式如下:Create Database StuDataOn Primary,;如果为了提高性能和可恢复性,则可以使用Log On子句来指定数据库的SQL Server事务日志将存储在一个与数据库对象不同的设备上,示例如下:Create Database StuDataOn Primary,Log On;GO......
2025-09-30
例如,学生选课实例,语法树表示为如图2-3所示。图2—3语法树图2—4关系代数语法树图2—5优化后的语法树2.把语法树转换成标准(优化)形式利用优化算法,把原始的语法树转换成优化的形式。......
2025-09-30
下面给出几个应用关系代数进行查询的实例。解题说明:该题的求解思路是在全部学号中去掉选修“C2”课程的学生学号,就得出没有选修课程号为“C2”课程的学生学号。应当特别注意的是,由于选择操作为元组操作,本题不能写为求既选修“C2”课程,又选修“C3”课程的学生学号。①除关系和被除关系都为选课表。通过选择运算,求出学号为“98002”学生所选课程的元组;通过投影运算,得出除关系的结构。......
2025-09-30
相关推荐