oracle物化视图建立触发器,物化视图上用触发器(用于同步)
作用:由数据源的主表与明细表在目标库进行合并
1,在数据源上建两表,一主,一明细 ,在目标库建引两表的合并表
-- Create table
create table TT_ACC_LEVYCODE主表
(
SESSION_ID NUMBER(10) not null,
LEVYCODE VARCHAR2(11),
KTZC_SESSION_ID VARCHAR2(7)
);
alter table TT_ACC_LEVYCODE
add constraint FKDD primary key (SESSION_ID)
using index
tablespace ZHENGGUAN
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
-- Create table明细表
create table TT_ACC_LEVYDETAILCODE
(
DEATID_ID VARCHAR2(10) not null,
SESSION_ID NUMBER(10),
DETAIL_NAME VARCHAR2(50)
)
tablespace ZHENGGUAN
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
-- Create/Recreate primary, unique and foreign key constraints
alter table TT_ACC_LEVYDETAILCODE
add constraint RFGDFGDF primary key (DEATID_ID)
using index
tablespace ZHENGGUAN
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
alter table TT_ACC_LEVYDETAILCODE
add constraint DDDEEEEE foreign key (SESSION_ID)
references TT_ACC_LEVYCODE (SESSION_ID);
-- Create table
create table TT_ACC_LEVYCODEINFO
(
SESSION_ID NUMBER(10) not null,
LEVYCODE VARCHAR2(11),
KTZC_SESSION_ID VARCHAR2(7),
DEATID_ID VARCHAR2(10) not null,
DETAIL_NAME VARCHAR2(50)
)
tablespace OWB_TG
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 80K
minextents 1
maxextents unlimited
);
-- Grant/Revoke object privileges
grant select, insert, update, delete on TT_ACC_LEVYCODEINFO to STAGING;--注:要把这些权限赋予中转用户
在数据源上建物化视图log
create materialized view log on tt_acc_levycode tablespace zhengguan_sn_log;
create materialized view log on tt_acc_levydetailcode tablespace zhengguan_sn_log;
-------------
2,在中转区建立两源表的物化视图
create materialized view tt_acc_levycode tablespace staging refresh fast as
select t.*
from t;
create materialized view tt_acc_levydetailcode tablespace staging refresh fast as
select t.*
from t;
--LNK27.REGRESS.RDBMS.DEV.US.ORACLE.COM 为中转区到数据源的dblink
3,在中转用户建立触发器
CREATE OR REPLACE TRIGGER WB_tr_acc_levydetailcode
after INSERT OR UPDATE
ON tt_acc_levydetailcode
FOR EACH ROW
DECLARE
v_SESSION_ID NUMBER(10) ;
v_LEVYCODE VARCHAR2(11);
v_KTZC_SESSION_ID VARCHAR2(7);
BEGIN
if INSERTING then
select t.session_id,t.levycode,t.ktzc_session_id
into v_session_id,v_levycode,v_ktzc_session_id
from tt_acc_levycode t
where t.session_id =:new.session_id;
insert into owb_tg.tt_acc_levycodeinfo values(v_SESSION_ID,v_LEVYCODE,v_KTZC_SESSION_ID,:new.DEATID_ID,:new.DETAIL_NAME);
end if;
if UPDATING then
update owb_tg.tt_acc_levycodeinfo t set t.detail_name=:new.detail_name
where t.deatid_id=:new.deatid_id;
end if;
END;
手工刷新视图
execute dbms_mview.refresh('tt_acc_levycode','f');
execute dbms_mview.refresh('tt_acc_levydetailcode','f');
这样执行可保证先后,若全写一起则并发执行
execute dbms_mview.refresh('tt_acc_levycode,tt_acc_levydetailcode','f');
oracle物化视图建立触发器,物化视图上用触发器(用于同步)相关推荐
- 创建数据库_详解Oracle数据库物化视图及创建物化视图索引
概述 物化视图是一种特殊的物理表,"物化"(Materialized)视图是相对普通视图而言的.普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实际上转换为视图S ...
- oracle修改物化视图字段,获取物化视图字段的修改矢量(一)
当表建立了物化视图日志之后,表的DML修改会被记录到物化视图日志中,而物化视图日志则包含了一个修改矢量,来记录哪个列被修改. 在文章 列的修改矢量可以通过2的N次方来获得,也就是POWER(2, N) ...
- oracle视图查询机制,物化视图及日志内部机制的一点研究
Oracle物化视图的快速刷新机制是通过物化视图日志完成的.Oracle如何通过一个物化视图日志就可以支持多个物化视图的快速刷新呢,本文简单的描述一下刷新的原理. 首先,看一下物化视图的结构: SQL ...
- oracle雾化试图_Oracle创建物化视图
Oracle创建物化视图 通过Oracle物化视图章节,我们已经了解到Oracle物化视图的作用和创建原理,本节通过实例详细讲解Oracle是如何创建物化视图的. 创建物化视图语法: 语法:creat ...
- oracle 物化视图没效果,物化视图失效的几种情况及测试
说明:物化视图(Materialized Views)是查询的结果集,所有原表和视图的变更都将导致物化视图的失效,最近就发现了一个物化视图经常失效的问题,以下是整理的文档. 一.物化视图状态查询:OR ...
- 数据库视图解析[普通视图、物化视图以及通过修改视图修改数据]
1. 关系型数据库的视图 1.1. 视图 视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据.但是,视图并不在数据库中以存储的数据值集形式 ...
- 创建物化视图commit_oracle 中物化视图讲解
oracle 中物化视图讲解 oracle中的物化视图首先需要创建物化视图日志,oracle根据用户创建的物化视图日志来创建物化视图日志表,物化视图日志表名称为mlog$_基表名,如果表名超过20位, ...
- mysql实现物化视图详解及视图与物化视图区别
再一次sql优化中一个select count(*)语句因数据量实在太大,已经无法从简单的索引什么进行优化了,在同事的推荐下考虑到了物化视图 物化视图是相对于视图而言的,但是两者实际上并没有什么关系就 ...
- mysql 5.6物化视图_mysql实现物化视图详解及视图与物化视图区别
再一次sql优化中一个select count(*)语句因数据量实在太大,已经无法从简单的索引什么进行优化了,在同事的推荐下考虑到了物化视图 物化视图是相对于视图而言的,但是两者实际上并没有什么关系就 ...
- SQL Server索引视图以(物化视图)及索引视图与查询重写
SQL Server索引视图以(物化视图)及索引视图与查询重写 本文出处:http://www.cnblogs.com/wy123/p/6041122.html 经常听Oracle的同学说起来物化视图 ...
最新文章
- 图像语义分割之FCN和CRF
- 我的世界java怎么骑马,我的世界怎么骑马?方法解答
- CVE-2021-29454——Smarty模板注入
- Windows驱动开发学习笔记(四)—— 3环与0环通信(常规方式)
- java多态和继承_Java 继承与多态的深入理解
- mysql sleep详解_sql注入详解(二)
- 超级简单的自动刷新_支付宝自动收取能量、偷能量、超级简单教程,荣耀V20亲测可用...
- 前端—每天5道面试题(十三)
- 信息学奥赛C++编程:计算分数加减表达式的值
- 软件管理的一位牛人.
- CSS常见选择器的用法
- BN和Dropout在训练和测试时的差别
- python小白逆袭大神_python小白逆天(3),Python,小白逆袭,大神,三
- 金山WPS:云端协同 AI赋能 WPS树起了Office新四大件|企服三会系列报道
- 路由配置与管理——静态路由配置与管理
- 全网最详细的Android实现三方分享ShareSDK分享功能
- 目标检测------损失函数=类别损失+位置损失
- Revit软件中参照线在制作墙体上的使用及快速CAD图纸墙转化
- 使用Scratch 3.0制作弹球游戏需求分析
- 什么是软件测试外包公司?有什么好处和坏处?
热门文章
- Oracle SQL的多表查询 看这一篇文章就够了~
- 在TI DSP开发板中烧写Flash程序
- 电解电容和钽电容的区别
- rtf格式内容转html
- MTK平台LCD驱动框架详解(一)
- 2021年建5G基站60万个;中兴遭减持;三大运营商2020年成绩单;电信发布新手机...
- 【Python网络蜘蛛 · 3】:post请求、模拟金山翻译(附源代码)
- 2022最新python100个实战练手项目,【附源码】,快来学习起来吧!
- Android已读未读功能,android – 将SMS消息标记为已读/未读或删除在KitKat中不起作用的消息...
- mysql中用户权限的授予_如何在MySQL中创建用户和授予权限