Oracle数据库-视图的概念

oracle|概念|视图|数据|数据库

    视图是原始数据库数据的一种变换,是查看表中数据的另外一种方式。可以将视图看成是一个移动的窗口,通过它可以看到感兴趣的数据。
    视图是从一个或多个实际表中获得的,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。

    视图的定义存在数据库中,与此定义相关的数据并没有再存一份于数据库中。通过视图看到的数据存放在基表中。

    视图看上去非常象数据库的物理表,对它的操作同任何其它的表一样。当通过视图修改数据时,实际上是在改变基表中的数据;相反地,基表数据的改变也会自动反映在由基表产生的视图中。由于逻辑上的原因,有些视图可以修改对应的基表,有些则不能(仅仅能查询)。

  二 视图的作用

     * 简单性。看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。

    * 安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其它数据则既看不见也取不到。数据库授权命令可以使每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上:

      使用权限可被限制在基表的行的子集上。

      使用权限可被限制在基表的列的子集上。 

      使用权限可被限制在基表的行和列的子集上。 

      使用权限可被限制在多个基表的连接所限定的行上。 

      使用权限可被限制在基表中的数据的统计汇总上。

      使用权限可被限制在另一视图的一个子集上,或是一些视图和基表合并后的子集上。

     * 逻辑数据独立性。视图可帮助用户屏蔽真实表结构变化带来的影响。

  三 视图的安全性

     视图的安全性可以防止未授权用户查看特定的行或列,是用户只能看到表中特定行的方法如下:

    1 在表中增加一个标志用户名的列;

    2 建立视图,是用户只能看到标有自己用户名的行;

    3 把视图授权给其他用户。

  四 逻辑数据独立性

    视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。视图可以在以下几个方面使程序与数据独立:

    1 如果应用建立在数据库表上,当数据库表发生变化时,可以在表上建立视图,通过视图屏蔽表的变化,从而应用程序可以不动。

    2 如果应用建立在数据库表上,当应用发生变化时,可以在表上建立视图,通过视图屏蔽应用的变化,从而使数据库表不动。

    3 如果应用建立在视图上,当数据库表发生变化时,可以在表上修改视图,通过视图屏蔽表的变化,从而应用程序可以不动。

    4 如果应用建立在视图上,当应用发生变化时,可以在表上修改视图,通过视图屏蔽应用的变化,从而数据库可以不动。

时间: 2024-08-01 23:17:15

Oracle数据库-视图的概念的相关文章

Oracle数据库视图与权限问题

  有三个用户test1,test2,test3, 三个用户都具有DBA色色权限. 用TEST1用户创建一个表T1,并将其查询权限授予TEST2: SQL> create table t1 as select * from all_objects; 表已创建. SQL> grant select on t1 to test2; 授权成功. SQL> create table t1 as select * from all_objects; 表已创建. SQL> grant sele

循序渐进讲解Oracle数据库的完整性概念

  [赛迪网-IT技术报道]一.Oracle中的实体完整性 Oracle在CREATE TABLE语句中提供了PRIMARY KEY子句,供用户在建表时指定关系的主码列.例如,在学生-选课数据库中,要定义Student表的Sno为主码,可使用如下语句: CREATE TABLE student (sno NUMBER(8), sanme VARCHAR(20), sage NUMBER(20), CONSTRAINT pk_sno PRIMARY KEY(sno)); 其中,PRIMARY KE

oracle物化视图

转自: http://www.cnblogs.com/BradMiller/archive/2011/04/24/2026321.html oracle物化视图 一.oracle物化视图基本概念 物化视图首先需要创建物化视图日志, oracle依据用户创建的物化视图日志来创建物化视图日志表, 物化视图日志表的名称为mlog$_后面跟基表的名称, 如果表名的长度超过20位,则只取前20位,当截短后出现名称重复时,oracle会自动在物化视图日志名称后面加上数字作为序号. 创建物化视图日志在建立时有

Oracle数据库表与视图

oracle|视图|数据|数据库 Oracle数据库数据对象中最基本的是表和视图,其他还有约束.序列.函数.存储过程.包.触发器等.对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径. 表和视图 Oracle中表是数据存储的基本结构.ORACLE8引入了分区表和对象表,ORACLE8i引入了临时表,使表的功能更强大.视图是一个或多个表中数据的逻辑表达式.本文我们将讨论怎样创建和管理简单的表和视图. 管理表 表可以看作有行和列的电子数据表,表是关

充分认识 Oracle 数据库表与视图

  Oracle数据库数据对象中最基本的是表和视图,其他还有约束.序列.函数.存储过程.包.触发器等.对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径. 表和视图 Oracle中表是数据存储的基本结构.Oracle8i引入了分区表和对象表,Oracle8i引入了临时表,使表的功能更强大.视图是一个或多个表中数据的逻辑表达式.本文我们将讨论怎样创建和管理简单的表和视图. 管理表 表可以看作有行和列的电子数据表,表是关系数据库中一种拥有数据的结构

oracle数据库的几个概念问题

问题描述 oracle数据库的几个概念问题 请问下数据库的存储过程是什么啊 脑子没概念 只有名字 还有触发器 和序列??请高手指点下... 解决方案 百度一下,你就知道--

深入探讨:oracle中方案的概念以及方案与数据库的关系_oracle

首先先理解方案的概念,然后再理解方案与数据库的关系. 先来看一下他们的定义: 复制代码 代码如下: A schema is a collection of database objects (used by a user.). Schema objects are the logical structures that directly refer to the database's data. A user is a name defined in the database that can

Oracle数据库备份恢复的概念:错误类型、实例恢复方法等

1.明确Oracle数据库中可能发生的错误类型;  2.描述实例恢复的方法;  3.明确checkpoints,redo log files和archive log files的重要性;  4.配置快速闪回区;  5.配置归档模式; Part of Your Job DBA的职责就是要保证数据库是可使用的而且是高效的;  1.避免数据库发生常规错误:比如用户无权限,表空间不足等等;  2.增加MTBF(Mean Time Between Failures),即两次发生故障的时间间隔;  3.使用

Oracle数据库备份策略的相关概念及使用

这篇论坛文章主要介绍了Oracle数据库备份策略的相关概念及使用中的注意事项,详细内容请大家参考下文 一.了解备份的重要性 可以说,从计算机系统出世的那天起,就有了备份这个概念,计算机以其强大的速度处理能力,取代了很多人为的工作,但是,往往很多时候,它又是那么弱不禁风,主板上的芯片.主板电路.内存.电源等任何一项不能正常工作,都会导致计算机系统不能正常工作.当然,这些损坏可以修复,不会导致应用和数据的损坏.但是,如果计算机的硬盘损坏,将会导致数据丢失,此时必须用备份恢复数据. 其实,在我们的现实