Refeshing the Materialized view
Hi,
I could not refresh the materialized view manually.
here is the command i am using.
execute DBMS_REFRESH.MAKE(
name => 'my_customer',
list => 'VIEW_MY_CUST_ALL',
next_date => sysdate,
interval => 'sysdate+1/48');
execute DBMS_REFRESH.REFRESH(
name => 'my_customer');
========i am getting following error ===========
SQL> ed
Wrote file afiedt.buf
1 execute DBMS_REFRESH.MAKE(
2 name => 'my_customer',
3 list => 'VIEW_MY_CUST_ALL',
4 next_date => sysdate,
5* interval => 'sysdate+1/48')
SQL> /
execute DBMS_REFRESH.MAKE(
ERROR at line 1:
ORA-00900: invalid SQL statement
========================
--Thanks
Raman
Does the materialized view exist and is it valid?
Fast refreshable materialzed views don't like SYSDATE, either :(
Similar Messages
-
How can I fast refresh the materialized view !!
I created a MV base on some tables in order to improve the querey speed.
but the mv I have created falied to refresh fast.
because there are two same table in the from clause:
jcdm jc1,jcdm jc2
create materialized view temp_mv
nologging
pctfree 0
storage (initial 2048k next 2048k pctincrease 0)
parallel
build immediate
refresh force
on demand
as
select
TAB_GSHX.rowid hx_rid,
TAB_GSHD.rowid hd_rid ,
JC1.rowid jc1_rid ,
JC2.rowid jc2_rid ,
YSHD_ID HXID,
JC1.JCDM QFD,
JC2.JCDM JLD
FROM
TAB_GSHX,
TAB_GSHD,
jCDM JC1,
JCDM JC2
WHERE
YSHD_ID=YSHX_ID
AND YSHD_QFD=JC1.JBJC_ID
AND YSHD_JLD=JC2.JBJC_ID
AND TO_CHAR(YSHX_time,'YYYYMMDD')='20030101'
the column msgtxt of the table MV_CAPABILITIES_TABLE is :
"the multiple instances of the same table or view" and " one or more joins present in mv".
How can I succeed in fast refresh the above temp_mv!!!
thanks.lianjun,
When you are using Oracle9i there is a procedure which can help you setup the materialized view. If some option isn't working it gives you hint why it doesn't work.
The procedure is dbms_mview.explain_mview.
Take a look at the documentation how to use it. (In the Oracle9i DWH guide the package is explained.)
Hope this helps
With kind regards,
Bas Roelands -
JOB to refresh the materialized views
Hi,
I have created the following job to call a procedure which refreshes all the materialized views but it that job has been running from ages although in the past it seems to work.
Can u advise me what im missing
REM : procedure to refresh all the job
PROCEDURE PROC_REFRESH_MVS AS
BEGIN
This procedure will refresh all of the MVs
DBMS_MVIEW.REFRESH('MV_A','c');
DBMS_MVIEW.REFRESH('MV_B','c');
DBMS_MVIEW.REFRESH('MV_Z','c');
END PROC_REFRESH_MVS;
REM Job to call the procedure
BEGIN
sys.dbms_scheduler.create_job(
job_name => '"SCHEMAOWNER"."REFRESH_MVS"',
job_type => 'STORED_PROCEDURE',
job_action => 'SCHEMAOWNER.PROC_REFRESH_MVS',
start_date => systimestamp at time zone 'Europe/Lisbon',
job_class => 'DEFAULT_JOB_CLASS',
comments => 'Refresh all the materialized views ',
auto_drop => FALSE,
enabled => FALSE);
sys.dbms_scheduler.set_attribute( name => '"SCHEMAOWNER"."REFRESH_MVS"', attribute => 'logging_level', value => DBMS_SCHEDULER.LOGGING_FULL);
sys.dbms_scheduler.enable( '"SCHEMAOWNER"."REFRESH_MVS"' );
END;Hi
To understand what's going on you should analyze the trace file that is generated when such an error occurs. Metalink note 131885.1 may be helpful.
HTH
Chris -
MM50 : add new column in the material view
Dear guru.
I need to add a new column of material master in the material view of MM50.
Do you have a solution (exit) in order to solve my problem ?
Thanks.> I need to add a new field in the MM50 transaction not in MM02.
Der Friend,
Pls be specific about your query. As you know MM50 is for material view extension which is a std SAP trxn to help extend the views set by standard SAP pack and if you are referring new field as a new view then it is not so easily approachable.
Shiva -
Creating the materialized view using the database link
Hi Guys,
I am using the Oracle 11g release version.
Following is my question,
I had created the Database link to get the data from remote DB table.
Using that DB link, i can access the required table using SELECT statment.
When i tried to create the materialized using that DB link.
I am getting the error SQL Error: ORA-00942: table or view does not exist.
Can anyone please find the root cause and provide the solution for this?
TIA,
Dhivakar.Hi Dhivakar,
try like this
CREATE DATABASE LINK test
CONNECT TO scott IDENTIFIED BY tiger
USING 'orcl';
Pls make sure the table name.which ur using to create the materialized view.Thanks
Venkadesh -
Error on compile the Materialized view refresh
Hello all,
I am getting issue while compile the Materialized view refresh.
ALTER MATERIALIZED VIEW FII_GL_AGRT_SUM_MV COMPILE;--( did successfully)
exec DBMS_MVIEW.REFRESH('APPS.FII_GL_AGRT_SUM_MV','C');
Error:
ORA-12008: error in materialized view refresh path
ORA-01013: user requested cancel of current operation
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2545
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2751
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2720
ORA-06512: at line 1
Please tell me what could be the issue
Thanks and Regards,
MuthuHello all,
I am using R12.1.3.
While execute the below command, its not completing..
exec DBMS_MVIEW.REFRESH('APPS.FII_GL_AGRT_SUM_MV','C');
I found the reason why its not completing. Because its Refresh In Progress.
SQL> select u.name owner,o.name mview_name, s.obj#,lastrefreshdate
*2 from sys.obj$ o, sys.sum$ s, sys.user$ u*
*3 where u.user# = o.owner# and o.obj# = s.obj# and o.type# = 42 AND bitand(s.mflags, 8) = 8;*
OWNER MVIEW_NAME OBJ# LASTREFRE
APPS FII_GL_AGRT_SUM_MV 438268 06-MAR-13
SQL> select decode(bitand(s.mflags,8), 8,'Refresh In Progress','Not being refreshed')
*2 from sys.obj$ o, sys.user$ u, sys.sum$ s*
*3 where o.obj# = s.obj# and o.owner# = u.user# and o.type# = 42*
*4 and o.name='FII_GL_AGRT_SUM_MV';*
DECODE(BITAND(S.MFL
Refresh In Progress
How to stop Refreshing or is there any other solution for this issue?
Please clarify me...
Thanks and Regards,
Muthu -
Ora-23454 when add an objects to the materialized view group
Hi, All,
I tend to create a distributed MV, when add an objects to the materialized view group using:
BEGIN
DBMS_REPCAT.CREATE_MVIEW_REPOBJECT (
gname => 'hr_repg',
sname => 'hr',
oname => 'departments_mv1',
type => 'SNAPSHOT',
min_communication => TRUE);
END;
I got the follwoing errors:
ORA-23454: flavor not defined for object group "PUBLIC"."HR_REPG"
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 105
ORA-06512: at "SYS.DBMS_REPCAT_UTL", line 452
ORA-06512: at "SYS.DBMS_REPCAT_UTL", line 468
ORA-06512: at "SYS.DBMS_REPCAT_SNA_UTL", line 5599
ORA-06512: at "SYS.DBMS_REPCAT_SNA", line 82
ORA-06512: at "SYS.DBMS_REPCAT", line 1332
ORA-06512: at line 2
Does anybody know what is the problem?
Thanks in advance for any advice.
Sharon.NiAre you trying to replicate an existing materialized view called "departments_mv1" ? That is what the implication of the arguments you are supplying.
If it is an MV, you have to supply the DDL (in the DDL_TEXT) as well.
Hemant K Chitale -
Updating one table is updating ALL the materialized views
We have a number of tables and also a number of materialized views that are interconnected. For some unexplained reason, when we update one table that should refresh one materialized view, all the materialized views are refreshed. It's causing massive bottlenecks on our system and we can't find the cause. Does anyone have any thoughts?
"when we update one table that should refresh one materialized view, all the materialized views are refreshed" --If that table is used in the creation of all materialized views,then it will try to refresh all of them..(ON COMMIT REFRESH)
-
How to alter the materialized view defintion with -- For update clause
My db version is 9.2.0.3
My orginal materialized view difination does not have "for update " clause.
how can i alter the mview defination to inclused and exclude the "for update" clause.
I dont want to drop and recreate the mview with for update clause. But I what to change the existing definition.
Please suggest.
Thanks
Naveen.I already have the view definition in place. I want to change the exising defination, by adding the "for update " clause. Is it possible with any " alter mview ... " syntax.
Below is my existing syntax. I don't what to drop and recreate. Just want to alter the existing definition , with for update clause.
create materialized view test
pctfree 0
tablespace DATA storage (pctincrease 0)
build immediate refresh start with sysdate next (trunc(sysdate+1) +1/24)
with primary key
disable query rewrite
as select * from test@isource;
Please suggest!
Thanks
Naveen
Edited by: user12096071 on Apr 8, 2010 2:56 PM -
Deleting the material view in mass
Hi Friends
The material master is created using LSMW in mass. The material list in the file itself is given wrong so a particular view is create in mass. Now the user says to remove the materials view in mass. How to do it. Is there any FM to remove or delete the particular view of a material. I want to remove the view in mass.
Regards
Vijay MukunthanIt is not forseen to remove created views.
you can only flag organisation level for deletion and subsequently run archiving with SARA object MM_MATNR, to physically remove this org level (this requires customizing)
technically the PSTAT fields at various levels (MARA, MARC, MBEW) control which view is created.
Usually you do not only have the status set, you usually have as well some fields filled in a view, as most views have mandatory fields.
If you load with BAPIs or IDOCs, then it shouldn't be a big deal to overwrite the existing material master with correct data in a new load (dont do it if you have the material already used) -
Preformance problem - Oracle does not choose the Materialized view
Hi,
Version 10204
I have the following Materialized view :
CREATE MATERIALIZED VIEW CRM.MV2_TUDWH_CRM_1201
TABLESPACE DW_LARGE
NOCACHE
NOLOGGING
COMPRESS
PARALLEL ( DEGREE DEFAULT INSTANCES DEFAULT )
BUILD IMMEDIATE
REFRESH COMPLETE ON DEMAND
WITH PRIMARY KEY
ENABLE QUERY REWRITE <<<<<<<======
AS
SELECT DISTINCT CRM.CI_CUST_INFO.NAP_INT_CUST_NUM
FROM ( CRM.CI_CUST_INFO
LEFT OUTER JOIN
CRM.CM_CASE_DIM
ON (CRM.CI_CUST_INFO.BO_ID = CRM.CM_CASE_DIM.BO_ID_CUST));When running the following statment , the MV is used as you can see from 10053 trace file:
Current SQL statement for this session:
EXPLAIN PLAN FOR
SELECT DISTINCT CRM.CI_CUST_INFO.NAP_INT_CUST_NUM
FROM ( CRM.CI_CUST_INFO
LEFT OUTER JOIN
CRM.CM_CASE_DIM
ON (CRM.CI_CUST_INFO.BO_ID = CRM.CM_CASE_DIM.BO_ID_CUST))
============
Plan Table
============
----------------------------------------------------------------+-----------------------------------+-------------------------+
| Id | Operation | Name | Rows | Bytes | Cost | Time | TQ |IN-OUT|PQ Distrib |
----------------------------------------------------------------+-----------------------------------+-------------------------+
| 0 | SELECT STATEMENT | | | | 64 | | | | |
| 1 | PX COORDINATOR | | | | | | | | |
| 2 | PX SEND QC (RANDOM) | :TQ10001 | 4694K | 28M | 64 | 00:00:01 |:Q1001| P->S |QC (RANDOM)|
| 3 | HASH UNIQUE | | 4694K | 28M | 64 | 00:00:01 |:Q1001| PCWP | |
| 4 | PX RECEIVE | | 4694K | 28M | 48 | 00:00:01 |:Q1001| PCWP | |
| 5 | PX SEND HASH | :TQ10000 | 4694K | 28M | 48 | 00:00:01 |:Q1000| P->P |HASH |
| 6 | PX BLOCK ITERATOR | | 4694K | 28M | 48 | 00:00:01 |:Q1000| PCWC | |
| 7 | MAT_VIEW REWRITE ACCESS FULL | MV2_TUDWH_CRM_1201| 4694K | 28M | 48 | 00:00:01 |:Q1000| PCWP | |
----------------------------------------------------------------+-----------------------------------+-------------------------+
Predicate Information:
7 - access(:Z>=:Z AND :Z<=:Z)
Content of other_xml column
===========================
db_version : 10.2.0.4
parse_schema : SYS
plan_hash : 4066877073
Outline Data:
/*+
BEGIN_OUTLINE_DATA
IGNORE_OPTIM_EMBEDDED_HINTS
OPTIMIZER_FEATURES_ENABLE('10.2.0.4')
OPT_PARAM('optimizer_dynamic_sampling' 3)
OPT_PARAM('star_transformation_enabled' 'true')
ALL_ROWS
OUTLINE_LEAF(@"SEL$C0C89B4D")
REWRITE(@"SEL$9E43CB6E" "MV2_TUDWH_CRM_1201")
OUTLINE(@"SEL$9E43CB6E")
MERGE(@"SEL$58A6D7F6")
OUTLINE(@"SEL$3")
OUTLINE(@"SEL$58A6D7F6")
MERGE(@"SEL$1")
OUTLINE(@"SEL$2")
OUTLINE(@"SEL$1")
FULL(@"SEL$C0C89B4D" "MV2_TUDWH_CRM_1201"@"SEL$030DBFD9")
END_OUTLINE_DATA
But when running more complex statment - the MV does not even considered by the optimizer as an option , and does not exists in the 10053 trace file:
Current SQL statement for this session:
EXPLAIN PLAN FOR
SELECT CRM.CI_CUST_INFO.NAP_INT_CUST_NUM
FROM ( CRM.CI_CUST_INFO
LEFT OUTER JOIN
CRM.CM_CASE_DIM
ON (CRM.CI_CUST_INFO.BO_ID = CRM.CM_CASE_DIM.BO_ID_CUST))
WHERE (CRM.CM_CASE_DIM.FIRST_PROVIDER_GRP_ID IN
('2565', '2611', '1190', '2610', '2612')
AND (CRM.CM_CASE_DIM.ROW_ADDED_DTTM >= (SYSDATE - 60)))
ORDER BY CRM.CI_CUST_INFO.NAP_INT_CUST_NUM
============
Plan Table
============
--------------------------------------------------+-----------------------------------+-------------------------+---------------+
| Id | Operation | Name | Rows | Bytes | Cost | Time | TQ |IN-OUT|PQ Distrib | Pstart| Pstop |
--------------------------------------------------+-----------------------------------+-------------------------+---------------+
| 0 | SELECT STATEMENT | | | | 13K | | | | | | |
| 1 | PX COORDINATOR | | | | | | | | | | |
| 2 | PX SEND QC (ORDER) | :TQ10002 | 1 | 56 | 13K | 00:01:26 |:Q1002| P->S |QC (ORDER) | | |
| 3 | SORT ORDER BY | | 1 | 56 | 13K | 00:01:26 |:Q1002| PCWP | | | |
| 4 | PX RECEIVE | | 1 | 56 | 13K | 00:01:26 |:Q1002| PCWP | | | |
| 5 | PX SEND RANGE | :TQ10001 | 1 | 56 | 13K | 00:01:26 |:Q1001| P->P |RANGE | | |
| 6 | HASH JOIN | | 1 | 56 | 13K | 00:01:26 |:Q1001| PCWP | | | |
| 7 | PX RECEIVE | | 1 | 31 | 11K | 00:01:12 |:Q1001| PCWP | | | |
| 8 | PX SEND BROADCAST | :TQ10000 | 1 | 31 | 11K | 00:01:12 |:Q1000| P->P |BROADCAST | | |
| 9 | PX BLOCK ITERATOR | | 1 | 31 | 11K | 00:01:12 |:Q1000| PCWC | | 1 | 8 |
| 10 | TABLE ACCESS FULL | CM_CASE_DIM | 1 | 31 | 11K | 00:01:12 |:Q1000| PCWP | | 1 | 8 |
| 11 | PX BLOCK ITERATOR | | 4694K | 115M | 2121 | 00:00:14 |:Q1001| PCWC | | 1 | 6 |
| 12 | TABLE ACCESS FULL | CI_CUST_INFO| 4694K | 115M | 2121 | 00:00:14 |:Q1001| PCWP | | 1 | 6 |
--------------------------------------------------+-----------------------------------+-------------------------+---------------+
Predicate Information:
6 - access("CI_CUST_INFO"."BO_ID"="CM_CASE_DIM"."BO_ID_CUST")
10 - access(:Z>=:Z AND :Z<=:Z)
10 - filter((INTERNAL_FUNCTION("CM_CASE_DIM"."FIRST_PROVIDER_GRP_ID") AND "CM_CASE_DIM"."ROW_ADDED_DTTM">=SYSDATE@!-60))
12 - access(:Z>=:Z AND :Z<=:Z)Can one suggested a reason why the optimized did not choose the m.v ?
After all as you can see the only change is adding more predicate to the statment , e.g:
WHERE (CRM.CM_CASE_DIM.FIRST_PROVIDER_GRP_ID IN
('2565', '2611', '1190', '2610', '2612')
AND (CRM.CM_CASE_DIM.ROW_ADDED_DTTM >= (SYSDATE - 60)))
ORDER BY CRM.CI_CUST_INFO.NAP_INT_CUST_NUM
ThanksHello Bob,
Thanks for your replay.
I just recreacted the MV and this time i REMOVED the DISTINCT and ADD two columns :
CREATE MATERIALIZED VIEW CRM.MV2_TUDWH_CRM_1201
TABLESPACE DW_LARGE
NOCACHE
NOLOGGING
COMPRESS
NOPARALLEL
BUILD IMMEDIATE
REFRESH COMPLETE ON DEMAND
WITH PRIMARY KEY
ENABLE QUERY REWRITE
AS
SELECT CRM.CI_CUST_INFO.NAP_INT_CUST_NUM,
CRM.CM_CASE_DIM.FIRST_PROVIDER_GRP_ID,
CRM.CM_CASE_DIM.ROW_ADDED_DTTM
FROM ( CRM.CI_CUST_INFO
LEFT OUTER JOIN
CRM.CM_CASE_DIM
ON (CRM.CI_CUST_INFO.BO_ID = CRM.CM_CASE_DIM.BO_ID_CUST));I rerun the first sql statment that in my first post.
What happen now is as followed :
- Optimizer choose to use MV , ONLY if i remove the DISTICT from the select statment.
- If add the DISTINCT to the select statment , oracle choose a diffrent plan.
Why ?
sql_id=ffr3mkc6z8rsv.
Current SQL statement for this session:
EXPLAIN PLAN FOR
SELECT DISTINCT CRM.CI_CUST_INFO.NAP_INT_CUST_NUM
FROM ( CRM.CI_CUST_INFO
LEFT OUTER JOIN
CRM.CM_CASE_DIM
ON (CRM.CI_CUST_INFO.BO_ID = CRM.CM_CASE_DIM.BO_ID_CUST))
============
Plan Table
============
---------------------------------------------------------+-----------------------------------+-------------------------+---------------+
| Id | Operation | Name | Rows | Bytes | Cost | Time | TQ |IN-OUT|PQ Distrib | Pstart| Pstop |
---------------------------------------------------------+-----------------------------------+-------------------------+---------------+
| 0 | SELECT STATEMENT | | | | 12K | | | | | | |
| 1 | PX COORDINATOR | | | | | | | | | | |
| 2 | PX SEND QC (RANDOM) | :TQ10003 | 4691K | 197M | 12K | 00:01:19 |:Q1003| P->S |QC (RANDOM)| | |
| 3 | HASH UNIQUE | | 4691K | 197M | 12K | 00:01:19 |:Q1003| PCWP | | | |
| 4 | PX RECEIVE | | 24M | 1030M | 12K | 00:01:18 |:Q1003| PCWP | | | |
| 5 | PX SEND HASH | :TQ10002 | 24M | 1030M | 12K | 00:01:18 |:Q1002| P->P |HASH | | |
| 6 | HASH JOIN OUTER | | 24M | 1030M | 12K | 00:01:18 |:Q1002| PCWP | | | |
| 7 | PX RECEIVE | | 4694K | 115M | 2121 | 00:00:14 |:Q1002| PCWP | | | |
| 8 | PX SEND HASH | :TQ10001 | 4694K | 115M | 2121 | 00:00:14 |:Q1001| P->P |HASH | | |
| 9 | PX BLOCK ITERATOR | | 4694K | 115M | 2121 | 00:00:14 |:Q1001| PCWC | | 1 | 6 |
| 10 | TABLE ACCESS FULL | CI_CUST_INFO | 4694K | 115M | 2121 | 00:00:14 |:Q1001| PCWP | | 1 | 6 |
| 11 | BUFFER SORT | | | | | |:Q1002| PCWC | | | |
| 12 | PX RECEIVE | | 24M | 431M | 10K | 00:01:05 |:Q1002| PCWP | | | |
| 13 | PX SEND HASH | :TQ10000 | 24M | 431M | 10K | 00:01:05 | | S->P |HASH | | |
| 14 | INDEX FAST FULL SCAN | CM_CASE_DIM_IX_3| 24M | 431M | 10K | 00:01:05 | | | | | |
---------------------------------------------------------+-----------------------------------+-------------------------+---------------+
Predicate Information:
6 - access("CI_CUST_INFO"."BO_ID"="CM_CASE_DIM"."BO_ID_CUST")
10 - access(:Z>=:Z AND :Z<=:Z) -
Is it possible to refresh the table from a Materialized view
Hi,
Is it possible to update the underlying table on which a Materialized view is created when some changes in a Materialized view is done.Is this reverse compatibility possible in Materialized View?
Thanks in Advance,
V.DennisIf you created the materialized view as UPDATEABLE then changes to it should automatically be relected in the underlying table. If this is not occurring I suggest you check the replication jobs. You probably have a stack of errors in DEFERROR.
Cheers, APC -
The data of my materialized view....in the while
Hello
We have problems with materialized views
We have one wich re-build each a short period of time
¿Can i avoid the data to dissapear in the time process of refresh?
Is so annoing to our clients to see that "from time to time" the data just dissapear for one period of time -the time while the materialized view is refreshing-
Thank you in advance
Bruno. Madrid. Spain> Is so annoing to our clients to see that "from time to time" the data just dissapear for
one period of time -the time while the materialized view is refreshing-
Have a similar problem. And dealing with large data volumes that makes the DELETE of the MV a very undesirable feature. Not as much a the resource footprint required, but the time it takes to do this - and the very tight processing windows that exist.
The solution is a self-rolled and very likely not ideal for most - but it works well enough for us in production.
No MV. Create a partition table. Create a staging table. Do a manual "full refresh" of the staging table (TRUNCATE and direct path INSERT). Follow this by a partition exchange with the partition table (no validation and including indexes). The result is that the data is replaced in the partitioned table within a second - no long running and expensive DELETE. End-users not effected by having a truncate pulling the data from beneath their reports. -
How do I figure where is the data in a materialized view coming from
Hi: when I run select NAME, OWNER from dba_mview_refresh_times, I see a number of materialized views. How do I find more details about this view i.e where is the data coming from and which fields. The source table that is in another database changed. But the view on my database where the materialized view exist has not changed. I want to confirm from where is data coming in this view
TIA
RaviSQL> select * from dict where table_name like 'ALL%MVIEW%'
TABLE_NAME COMMENTS
ALL_BASE_TABLE_MVIEWS All materialized views with log(s) in the database that the user can s
ee
ALL_MVIEWS All materialized views in the database
ALL_MVIEW_AGGREGATES Description of the materialized view aggregates accessible to the user
ALL_MVIEW_ANALYSIS Description of the materialized views accessible to the user
ALL_MVIEW_COMMENTS Comments on materialized views accessible to the user
ALL_MVIEW_DETAIL_PARTITION Freshness information of all PCT materialized views in the database
ALL_MVIEW_DETAIL_RELATIONS Description of the materialized view detail tables accessible to the u
ser
ALL_MVIEW_DETAIL_SUBPARTITION Freshness information of all PCT materialized views in the database
ALL_MVIEW_JOINS Description of a join between two columns in the
WHERE clause of a materialized view accessible to the user
ALL_MVIEW_KEYS Description of the columns that appear in the GROUP BY
list of a materialized view accessible to the user
ALL_MVIEW_LOGS All materialized view logs in the database that the user can see
ALL_MVIEW_REFRESH_TIMES Materialized views and their last refresh times for each master table
that the user can look at
ALL_REGISTERED_MVIEWS Remote materialized views of local tables that the user can see
13 rows selected. -
Creating a Materialized View Log After the Data has been instered
Hi,
I am trying to create a method of replication from Oracle to MySQL using the Materialized View Log table.
This has been done before and works quite well, the only problem is that I am trying to impliment the log after the table has been created and populated and wish to push all the existing data through the log file...
Does anyone know if it is possible to refresh the Materialized View Log and not a Materialized View.
The way the replication is intended to work is:
Oracle> Data inserted into table
Oracle> writes the vector data to the MVL
Script> Monitors the MVL and can see the changes being made to the Oracle Table
Script> Updates MySQL with the data and removes the rows from the MVL
MySQL is then used with other unix systems
Currently we export the data from the table using Triggers and a cronjob running every x minute to check for changes in the TriggerTables
Many thanks for your time on this, I have been checking for almost a whole working day and not found the answer to this problem.Thats what I thought, the MVL will only read data that has changed since it was created and wont have the option to load in all the data as though it was made before the table was created.
From what I have read, the MVL is quicker than a Trigger and I have some free code that prooved to work from a MVL using it as a reference to know what records to update. There is not that much to a MVL, a record ID and type of update, New, Update or Delete.
I think what I will have to do is work on a the same principle for the MVL but use a Trigger as this way we can do a full reload if required at any point.
Many thanks for your help.
Maybe you are looking for
-
I have to populate Description field by default in AGIS page (Advanced Global Intercompany System). Field Description: messageTextInput: Description VO: FunTrxHeaderVO VO Attribute: Description VO is entity based. Now if the field is null then I have
-
Prob.. in change pasword page
i have a prob...in following code in which user when wants to change his password..he has to enter the username and old password..and then new password..then below query update the password.... my prob is that the password is changing but prob is tha
-
Can text messages in the incompletion log be found in any table?
We need to store and review the text messages found in the online incompletion log. Does anyone know if these are stored in a table? Or if they are always redetermined upon VA01 or VA02 transactions, does anyone know at what point in what program t
-
Zero KB of 0.1 KB - stopped (err = -100000)
|------ |There were problems downloading some purchased items. |For more information on the items that could not be downloaded, click below. | |There was a problem downloading "Ronda a la Turque / Alison Balsom: Caprice / Alison Balsom, |Edward Gardn
-
Microsoft advertising/Adcontrol in a c++ game?
Hi everyone!, I've made a game in c++ with the cocos2d-x game engine. Now I want to add some ad in the game. I've read the doc on MSDN (https://msdn.microsoft.com/fr-fr/library/advertising-mobile-windows-phone-ads-walkthroughs-81-xaml-markup(v=msads.