视图
1) 视图是从一个表或多个表中导出的虚表,它与常规表不同之处在于它并不存储数据-它只是在一个存储的查询中定义.视图同真实表一样,也包含一系列带有名称的列和数据。
2) 视图建立在已有表的基础上, 视图赖以建立的这些表称为基表。
3) 向视图提供数据内容的语句为 SELECT 语句,可以将视图理解为存储起来的SELECT语句.
4) 视图向用户提供基表数据的另一种表现形式
视图分为:简单视图和复杂视图
简单的视图:只引用一个表,并且它只从基础表中检索数据,不允许修改其中的数据;
复杂的视图:引用多个表,视图越复杂、视图内再查询的表达式就越多越复杂.
创建视图的语法:
CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view
[(alias[, alias]...)]
AS subquery
[WITH CHECK OPTION [CONSTRAINT constraint]]
[WITH READ ONLY [CONSTRAINT constraint]];
注意:在创建视图时应先赋予创建视图的权限,create view或create any view权限
//切换到管理员然后赋予权限
SQL> grant create any view to redarmy;
SQL> grant create view to redarmy;
为什么使用视图?
控制数据访问:提供了一种安全机制,通过视图显示数据时,屏蔽用户不应该知道的数据.
简单视图:
简化查询:select语句构造了一个复杂的查询语句,每次使用必须都得调用它,根据复杂查询的语句创建一个试图,来简化查询。
//创建视图时在子查询中给列定起别名
SQL> create view usersview as select username name,password pass from users;
//查询视图
SQL> select * from usersview;
//检索视图的定义
SQL> select * from user_views;
复杂视图:
是通过多个表的连接查询获得的,又称为连接视图
SQL> create view empdept as (select e.*,d.dname,d.loc from emp e inner join dept d on e.deptno=d.deptno);
//使用CREATE OR REPLACE VIEW 子句修改视图
SQL> create or replace view usersview as(select * from users);
//创建带有函数,groupby子句的视图
SQL> create or replace view gde as ( select deptno,count(*) cou from emp group by deptno);
//创建连接视图 带有函数 group by子句 order by 子句
SQL> create view gdeo as select e.deptno,count(*) cou from emp e inner join dept d on e.deptno=d.deptno group by e.deptno order by e.deptno;
//在上面的基础上带有having子句
SQL> create view gdeoh as select e.deptno,count(*) cou from emp e inner join dept d on e.deptno=d.deptno group by e.deptno having count(*)>3 order by e.deptno;
分享到:
相关推荐
oracle笔记视图,有视图的具体代码案例!视图的知识点笔记,视图的注意事项!
首先,笔记可能包含了Oracle数据库的基础知识,如SQL语言的使用,包括SELECT、INSERT、UPDATE、DELETE等基本操作,以及更复杂的子查询、联接查询、视图和索引等。此外,可能还涉及了数据库管理的基本概念,如数据...
《MLDN最经典的ORACLE笔记》是李兴华老师倾力打造的一份全面而深入的Oracle学习资源,专为对数据库技术感兴趣的读者精心准备。Oracle作为全球广泛使用的数据库管理系统,其强大功能和复杂性使得深入理解和掌握Oracle...
在达内的Oracle笔记中,可能会详细讲解SELECT语句用于数据检索,INSERT、UPDATE、DELETE用于数据增删改,以及CREATE、ALTER、DROP用于数据库对象管理的语法和用法。 3. **数据库设计**:良好的数据库设计是确保系统...
Oracle物化视图是一种在数据库中预先计算并存储视图查询结果的数据对象,它与普通的视图不同,普通视图在查询时动态地基于基表数据生成结果,而物化视图则拥有自己的物理存储,提供了对数据的快速访问。在本篇循序渐...
这份"Oracle笔记详解资料用例"涵盖了Oracle数据库的核心概念、安装配置、SQL语言、表和索引、存储结构、备份恢复、性能优化等多个方面,是学习和掌握Oracle数据库的宝贵资源。 首先,Oracle数据库的基础部分包括...
首先,Oracle笔记可能涵盖的基础概念包括数据库的结构,如表空间、段、区和块等,这些都是Oracle存储数据的基本单元。表空间是数据库中最大的逻辑存储单位,用于组织和存储数据文件。段是表空间内的逻辑存储结构,如...
韩顺平Oracle数据库教程笔记涵盖了Oracle数据库的基础知识和高级技术,涵盖了数据类型、查询语句、条件语句、排序语句、分组语句、联结语句、子查询、数据操作、视图、索引、存储过程、触发器、数据库设计、数据库...
Oracle笔记中会涵盖如何创建和管理数据库对象,如表、索引、视图、存储过程、触发器等。表是数据的主要存储结构,索引可以提高查询速度,视图可以简化复杂查询,而存储过程和触发器则是实现业务逻辑的重要工具。 五...
### 韩顺平Oracle视频笔记知识点概览 #### 1. Oracle 用户管理 - **概念**:在Oracle数据库中,用户是用来管理访问权限的基本单位。每个用户都可以有自己的模式(schema),其中包含各种对象如表、视图等。 - **创建...
《Oracle经典笔记》是一份深度探讨Oracle数据库管理系统的综合学习资料。这份笔记涵盖了从Oracle PL/SQL编程到SQL查询语言的广泛主题,旨在帮助读者深入理解Oracle数据库的运作机制和应用技巧。 首先,我们来看看...
除了上述重点,笔记可能还包含了Oracle的其他重要概念,如索引、触发器、视图、事务管理、备份恢复策略、性能优化技巧等。索引能显著提升查询速度,但过度使用也可能导致写操作变慢;触发器用于在特定事件发生时自动...
《韩顺平最新Oracle笔记及PPT》是针对Oracle数据库技术的一套全面的学习资源,由知名IT讲师韩顺平提供。这些资料包含了2011年韩顺平的最新教学内容,适合对Oracle有兴趣或者需要提升Oracle技能的IT专业人士。 ...
【Oracle笔记(基于尚学堂马士兵)】 Oracle是一款全球广泛使用的大型关系型数据库管理系统,由美国Oracle公司开发。本笔记主要基于尚学堂马士兵老师的教学内容,深入浅出地介绍了Oracle的基本概念、安装配置、SQL...
7. **查询用户信息和权限**:可以使用`dba_users`视图来查询用户信息,`user_sys_privs`和`user_role_privs`视图来查看用户权限和角色信息: ```sql select * from dba_users where username='XUYONGCHAO'; ...
Oracle提供了多种性能优化手段,如索引优化、查询优化、分区技术、物化视图、绑定变量等。理解并运用这些方法能显著提升查询效率。 通过深入学习和实践这些Oracle SQL知识点,你将能够高效地管理和操作Oracle数据库...
这个“个人学习Oracle笔记”文件很可能是作者在深入学习Oracle数据库的过程中积累的知识点总结,旨在帮助初学者从基础开始逐步掌握Oracle的核心概念和技术。 Oracle数据库的基础知识包括以下几个主要方面: 1. **...
学习Oracle不仅需要理解这些基本概念,还需要实践操作,掌握SQL语言、存储过程、触发器、索引、视图等更高级的概念。Oracle的复杂性和灵活性使其成为大型企业级应用的首选数据库系统。对于初学者来说,通过阅读学习...