创建实物视图(快照)? CREATE OR REPLACE VIEW myview (fld)ASSELECT aa fld from test; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 lianhg(lianhg) :你写的是一般的视图。物理视图是实际存在的数据表。 实体化视图的定义。 实体化视图(Materialized View)即快照(Snapshot),也称物化视图,存放于本地。实体化视图常用来存放预计算的合计数据,如汇总和平均。实体化视图也可以是主表的一个完整副本。实体化视图往往定义成只读。通常情况下,实体化视图并不随着主表的更新而刷新。对于那些实时性不强而又要经济查询的信息来说,实体化视图可以是一个为其它远程节点提供信息的最好的方法。实体化视图在应用中有如下优缺点: 优点:1、改进了性能,加快了查询速度。实体化视图是一个本地 对象,用户在查询数据时,避免了网络开销。 2、提高了数据的可靠性和安全性。如果主表数据丢失,并 不影响实体化视图的数据查询。在实体化视图没有刷新 之前,且该视图是主表的一个完整副本(在建立实体化视 图时执行了Select * From TableName),那么,该视图实 际上保留了主表数据最近的一个备份。 3、实体化视图可以被自动定时刷新。缺点:1、实体化视图查询的信息不是实时信息。 2、实体化视图占用本地物理存储空间。实体化视图的建立。建立实体化视图用 CREATE MATERIALIZED VIEW 或 CREATESNAPSHOT 语句。为了在自己的模式中建立实体化视图,用户必须具有CREATE MATERILIZED VIEW、CREATE SNAPSHOT、CREATETABLE、CREATE INDEX、CREATE VIEW系统权限。建立实体化视图的语句(此处只列出常用选项): CREATE MATERILIZED VIEW [SCHEMA.] 实体化视图名 [TABLESPACE] [STORAGE] [REFRESH [FAST|FORCE|COMPLETE]] [START WITH 日期] [NEXT 日期] [FOR UPDATE] AS 子查询An Example of Creating Materialized View: Create Materialized View BBRefresh CompleteStart With Sysdate+10/24 Next Trunc(Sysdate,’Day’)+10/24 As Select Sum(Score) Total From AA Group By Class; 说明:该语句建立了一个实体化视图BB,其源数据从表AA获得。它的刷新模式为完全刷新(Complete),第一次刷新时间为第二天上午10点,以后在每星期一的上午10点进行完全刷新。实体化视图的刷新。1、 自动刷新,如上例所示,在某个特定的时间自动更改本地实体化视图的内容。2、 手工刷新,使用DBMS_REFRESH 存储过程来完成。 EXEC DBMS_REFRESH.REFRESH(‘BB’); 注:BB为实体化视图名。3、 刷新的三种方式:快速刷新(Fast)、完全刷新(Complete)、快速/完全刷新(Force)。实体化视图的删除。用DROP SNAPSHOT 或 DROP MATERIALIZED VIEW 命令。实体化视图的修改。实体化视图的修改主要是指改变其存储特性和自动刷新方式及其刷新时间。 例:ALTER SNAPSHOT 实体化视图名REFRESH FORCE; 或 ALTER MATERIALIZED VIEW 实体化视图名REFRESH FORCE;实体化视图记录的修改。实体化视图记录能否被修改,要看在实体化视图建立时,有没有用FOR UPDATE 选项。实体化视图记录的更改、删除和增加并不影响主表的记录。当实体化视图的记录被更改或删除后,可通过刷新操作(自动或手工)来重新获得主表的数据 http://download-west.oracle.com/docs/cd/A83908_02/NT816EE/DOC/index.htm CREATE SNAPSHOT my AS SELECT * FROM test 如何处理大数据量的查询? oracle 正则表达式 匹配汉字 oracle 插入的值对于列过大 如何建立对应表 DB LINK创建时的问题 裸求一SQL语句,百分,给建议也给分。 求一简单问题 初学者:ORACLE Developer报表编辑器中字段前的图标是什么意思? 为什么在win2000 server上不能安装ORACLE9I?? Oracle数据库,怎么查多表的约束 这样的SQL语句怎么写? 用什么函数可以直接得到group by后的记录条数
实体化视图(Materialized View)即快照(Snapshot),也称物化视图,
存放于本地。实体化视图常用来存放预计算的合计数据,如汇总和平
均。实体化视图也可以是主表的一个完整副本。实体化视图往往定义
成只读。通常情况下,实体化视图并不随着主表的更新而刷新。对于
那些实时性不强而又要经济查询的信息来说,实体化视图可以是一个
为其它远程节点提供信息的最好的方法。
实体化视图在应用中有如下优缺点:
优点:1、改进了性能,加快了查询速度。实体化视图是一个本地
对象,用户在查询数据时,避免了网络开销。
2、提高了数据的可靠性和安全性。如果主表数据丢失,并
不影响实体化视图的数据查询。在实体化视图没有刷新
之前,且该视图是主表的一个完整副本(在建立实体化视
图时执行了Select * From TableName),那么,该视图实
际上保留了主表数据最近的一个备份。
3、实体化视图可以被自动定时刷新。
缺点:1、实体化视图查询的信息不是实时信息。
2、实体化视图占用本地物理存储空间。
实体化视图的建立。
建立实体化视图用 CREATE MATERIALIZED VIEW 或 CREATE
SNAPSHOT 语句。为了在自己的模式中建立实体化视图,用户必须具
有CREATE MATERILIZED VIEW、CREATE SNAPSHOT、CREATE
TABLE、CREATE INDEX、CREATE VIEW系统权限。
建立实体化视图的语句(此处只列出常用选项):
CREATE MATERILIZED VIEW [SCHEMA.] 实体化视图名
[TABLESPACE] [STORAGE]
[REFRESH [FAST|FORCE|COMPLETE]]
[START WITH 日期] [NEXT 日期]
[FOR UPDATE]
AS 子查询
An Example of Creating Materialized View:
Create Materialized View BB
Refresh Complete
Start With Sysdate+10/24 Next Trunc(Sysdate,’Day’)+10/24
As Select Sum(Score) Total From AA Group By Class;
说明:该语句建立了一个实体化视图BB,其源数据从表AA获
得。它的刷新模式为完全刷新(Complete),第一次刷新时间为第二
天上午10点,以后在每星期一的上午10点进行完全刷新。
实体化视图的刷新。
1、 自动刷新,如上例所示,在某个特定的时间自动更改本地实体化视图的内容。
2、 手工刷新,使用DBMS_REFRESH 存储过程来完成。
EXEC DBMS_REFRESH.REFRESH(‘BB’);
注:BB为实体化视图名。
3、 刷新的三种方式:快速刷新(Fast)、完全刷新(Complete)、
快速/完全刷新(Force)。
实体化视图的删除。
用DROP SNAPSHOT 或 DROP MATERIALIZED VIEW 命令。
实体化视图的修改。
实体化视图的修改主要是指改变其存储特性和自动刷新方式及其
刷新时间。
例:ALTER SNAPSHOT 实体化视图名
REFRESH FORCE;
或 ALTER MATERIALIZED VIEW 实体化视图名
REFRESH FORCE;
实体化视图记录的修改。
实体化视图记录能否被修改,要看在实体化视图建立时,有没有用
FOR UPDATE 选项。
实体化视图记录的更改、删除和增加并不影响主表的记录。当实体
化视图的记录被更改或删除后,可通过刷新操作(自动或手工)来重新获
得主表的数据
SELECT * FROM test