有关Oracle视图的基本概念和创建

数据库 Oracle
Oracle数据库中,我们常用到视图来建表,省时方便快捷。下面我们就来简单介绍视图的基本概念及Oracle视图的创建。

Oracle数据库中,我们常用到视图来建表,省时方便快捷。下面我们就来简单介绍视图的基本概念及Oracle视图的创建。

视图的概念

视图是基于一张表或多张表或另外一个视图的逻辑表。视图不同于表,视图本身不包含任何数据。表是实际独立存在的实体,是用于存储数据的基本结构。而视图只是一种定义,对应一个查询语句。视图的数据都来自于某些表,这些表被称为基表。通过视图来查看表,就像是从不同的角度来观察一个(或多个)表。
视图有如下一些优点:
* 可以提高数据访问的安全性,通过视图往往只可以访问数据库中表的特定部分,限制了用户访问表的全部行和列。
* 简化了对数据的查询,隐藏了查询的复杂性。视图的数据来自一个复杂的查询,用户对视图的检索却很简单。
* 一个视图可以检索多张表的数据,因此用户通过访问一个视图,可完成对多个表的访问。
* 视图是相同数据的不同表示,通过为不同的用户创建同一个表的不同视图,使用户可分别访问同一个表的不同部分。
视图可以在表能够使用的任何地方使用,但在对视图的操作上同表相比有些限制,特别是插入和修改操作。对视图的操作将传递到基表,所以在表上定义的约束条件和触发器在视图上将同样起作用。

Oracle视图的创建

创建Oracle视图需要CREAE VIEW系统权限,视图的创建语法如下:
CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW 视图名[(别名1[,别名2...])]
AS 子查询
[WITH CHECK OPTION [CONSTRAINT 约束名]]
[WITH READ ONLY]
其中:
OR REPLACE 表示替代已经存在的视图。
FORCE表示不管基表是否存在,创建视图。
NOFORCE表示只有基表存在时,才创建视图,是默认值。
别名是为子查询中选中的列新定义的名字,替代查询表中原有的列名。
子查询是一个用于定义视图的SELECT查询语句,可以包含连接、分组及子查询。
WITH CHECK OPTION表示进行视图插入或修改时必须满足子查询的约束条件。后面的约束名是该约束条件的名字。
WITH READ ONLY 表示视图是只读的。
删除视图的语法如下:
DROP VIEW 视图名;
删除视图者需要是视图的建立者或者拥有DROP ANY VIEW权限。视图的删除不影响基表,不会丢失数据。
 

【编辑推荐】

  1. 修改Oracle存储过程所需代码
  2. 对Oracle存储过程的总结
  3. 实现Oracle存储过程的实际应用的代码 
  4. 深入高性能的Oracle动态SQL开发 
  5. Oracle SQL的优化规则解析 
责任编辑:佚名
相关推荐

2010-04-01 16:54:06

Oracle体系结构

2011-03-28 11:05:17

ODBC

2010-06-24 13:26:53

FTP协议

2017-07-10 16:40:09

2010-06-21 18:04:08

2009-09-07 04:29:28

SDI MDI

2010-08-23 16:58:17

DHCP协议

2010-07-07 15:17:40

LDAP协议

2010-06-08 16:11:10

SPI总线协议

2017-05-02 14:45:11

深度学习机器学习人工神经网络

2011-01-28 15:11:15

PowerShell

2012-09-11 14:39:03

Moosefs

2014-04-16 15:11:19

Spark

2009-03-20 11:46:10

MGCP协议网关

2010-06-08 16:52:38

CANopen总线协议

2010-06-29 13:00:49

EIGRP协议

2010-06-12 14:12:22

RSVP协议

2010-04-01 16:40:17

Oracle数据库

2023-06-14 00:21:52

2012-04-20 13:27:17

NFC
点赞
收藏

51CTO技术栈公众号