Oracle 视图
视图(view),也称虚表, 不占用物理空间,这个也是相对概念,因为视图本身的定义语句还是要存储在数据字典里的。视图只有逻辑定义。每次使用的时候, 只是重新执行SQL.
还有一种视图:物化视图(MATERIALIZED VIEW ),也称实体化视图,快照 (8i 以前的说法) ,它是含有数据的,占用存储空间。 关于物化视图,具体参考我的blog:
Oracle 物化视图
http://blog.csdn.net/tianlesoftware/archive/2009/10/23/4713553.aspx
一. 视图的特点
1. 集中用户感兴趣的数据. 通常用户只是对表中的某一部分数据感兴趣, 对其他的数据不是那么敏感, 所以用户通过视图就可以操 纵自己所需的数据. 对于开发人员来说, 也可以屏蔽一些数据.
2. 掩码数据库的复杂性. 通过视图机制将数据库设计的复杂性与用户屏蔽分开, 这样用户通过视图的操作就可以达到简化对数据库的复杂操作.
3. 简化用户的权限. 由于视图只是基表的逻辑表, 所以通过视图可以将视图的权限和基表权限分离.
4. 重组数据. 视图可以来自多个基表, 从而可以利用视图对数据进行进一步地分析.
二. 视图可以由以下任意一项组成:
1. 一个基表的任意子集
2. 两个或两个以上的基表的合集
3. 两个或两个以上基表的交集
4. 一个或者多个基表运算的结果集合
5. 另一个视图的子集.
三. 创建视图的基本语法:
CREATE[OR REPLACE][FORCE][NOFORCE]VIEW view_name
[(column_name)[,….n]]
AS
Select_statement
[WITH CHECK OPTION[CONSTRAINT constraint_name]]
[WITH READ ONLY]
说明:
view_name : 视图的名字
column_name: 视图中的列名
在下列情况下 , 必须指定视图列的名称
* 由算术表达式 , 系统内置函数或者常量得到的列
* 共享同一个表名连接得到的列
* 希望视图中的列名与表中的列名不同的时候
REPLACE: 如果创建视图时, 已经存在此视图, 则重新创建此视图, 相当于覆盖
FORCE: 强制创建视图, 无论的视图所依赖的基表否存在或是否有权限创建
NOFORCE:
相关文档:
更改oracle Listener 配置:D:\Oracle\moon\product\11.1.0\db_1\NETWORK\ADMIN 目录之下:Listener.ora文件进行配置:
# listener.ora Network Configuration File: d:\Oracle\moon\product\11.1.0\db_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SI ......
PL/SQL-FOR UPDATE 与 FOR UPDATE OF的区别
url:http://hi.baidu.com/1413/blog/item/a521251f7e5993c4a686696b.html
数据库 oracle for update of 和 for update区别
select * from TTable1 for update 锁定表的所有行,只能读不能写
2 select * from TTable1 wher ......
在我开发BS结构程序中,由于经常需要在ORACLE中处理一些容量较大的文本数据,所以经过反复测试终于用ASP成功解
决了大文本数据在ORACLE下存取问题。
一、运行环境:
1、Microsoft Windows 2000 Server + IIS 5.0
2、Oracle8i中文标准版
二、建立数据表:
CREATE TABLE SYSTEM.TEST(
B ......
1、通过Toad将数据可结构生成SQL(注意用户)。
[DataBase] [Export] [GenerateSchmaScript]
2、创建DBLink.
DROP PUBLIC DATABASE LINK "ROOT.US.ORACLE.COM";
CREATE PUBLIC DATABASE LINK "ROOT.US.ORACLE.COM"
&nb ......