使用 on prebuilt table 创建物化视图

原创 2007年09月20日 17:54:00
Connected to:
Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
With the Partitioning option
JServer Release 8.1.7.0.0 - Production

创建物化视图
SQL> create materialized view emp as select * from scott.emp;

Materialized view created.

SQL> select object_name,object_type from user_objects where object_name='EMP';

OBJECT_NAME OBJECT_TYPE
------------------
EMP TABLE
EMP UNDEFINED

删除物化视图
SQL> drop materialized view emp;
Materialized view dropped.
以上2个对象都被删除了,包括UNDEFINED的EMP
SQL> select object_name,object_type from user_objects where object_name='EMP';
No row selected。
先手工创建表
SQL> create table emp as select * from scott.emp;
Table created.
使用on prebuilt table注册新的物化视图,注意view名称必须和表名称一样。
SQL> create materialized view emp on prebuilt table as select * from scott.emp;

Materialized view created.

SQL> select object_name,object_type from user_objects where object_name='EMP';

OBJECT_NAME OBJECT_TYPE
------------------
EMP TABLE
EMP UNDEFINED

表emp已经作为物化视图了。
SQL> delete from emp;
delete from emp
*
ERROR at line 1:
ORA-01732: data manipulation operation not legal on this view

删除物化视图后,原来的表未被删除。 使用on prebuilt table创建的物化视图被删除后,原来的表不被删除。
SQL> drop materialized view emp;
Materialized view dropped.

SQL> select object_name,object_type from user_objects where object_name='EMP';

OBJECT_NAME OBJECT_TYPE
------------------
EMP TABLE


因此使用 on prebuilt table 创建物化视图,更灵活,安全。
同样可以使用on prebuilt table 创建快照,这样减少了快照重新建立给数据增量同步带来的时间成本。
 

相关文章推荐

使用物化视图来同步数据on prebuilt table

一、怎么样刷新 mv可以用来同步数据,一般采用主键同步或者是ROWID同步,我们这里只讨论主键同步(Rowid同步其实是为Rowid在目标表上创建了一个隐含索引,原理跟主键同步一样)。mv的主要...

Oracle物化视图3 - Prebuilt MV

介绍 Oracle中,Prebuilt MV建立在同名的普通表上。Prebuilt MV的列是该同名表的列的一个子集。也就是说,该同名表可以包含不在MV中出线的列(Unmanaged ...

用table+物化视图优化复杂语句中以%开头like特定格式字段查询

基于此复杂语句中性能是由语句中的like '%%'引

物化视图定义为on commit导致update更新基表慢的解决方案

 由于物化视图定义为on commit导致update更新基表慢的解决方案   由于物化视图定义为on commit导致update更新基表慢的解决方案 以下是模拟和解决测试过程:   ...
  • BoWa21C
  • BoWa21C
  • 2013年12月21日 22:02
  • 527

由于物化视图定义为on commit导致update更新基表慢的解决方案

由于物化视图定义为on commit导致update更新基表慢的解决方案以下是模拟和解决测试过程:(模拟update慢的过程)1、首先基于基表创建物化视图日志:create materialized ...

oralce创建物化视图

  • 2014年04月23日 09:16
  • 314B
  • 下载

物化视图,索引视图,函数索引;创建索引时使用DESC

一、物化视图 Oracle的物化视图是包括一个查询结果的数据库对像,它是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表。物化视图存储基于远程表的数据,也可以称为快照。 ...

创建物化视图并定时refresh

当我们有报表服务器等系统,为了性能的原因很多时候会使用物化视图,为了保持mview与基表的同步,需要refresh mview.mview的refresh可以分为on commit,on demand...

Oracle物化视图创建全过程using dblink

 我们如果遇到需要从其它系统的数据库中取数据进行统计分析的问题,可疑选择使用ORACLE的ODI工具进行抽数,但是对方提供的数据库用户下没有任何对象,只是有查询所有表的权限,因此无法做数据反向。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用 on prebuilt table 创建物化视图
举报原因:
原因补充:

(最多只允许输入30个字)