Error when refreshing Materialized View...
Hello
I included below code in my procedure which will get called from a concurrent program from Oralce Application (11.5.10.2). When I run this refresh command from SQL/TOAD it is working but erroring out (Error: ORA-00900: invalid SQL statement) when the same getting called from a concurrent program. Please suggest me how to refresh a Materialized View through a concurrent program...
l_chr_text := 'execute dbms_snapshot.refresh (''tk_legacy_acct_stg'',''C'');';
execute immediate l_chr_text;
Thanks!!
l_chr_text := 'execute dbms_snapshot.refresh (''tk_legacy_acct_stg'',''C'');';
execute immediate l_chr_text;replace above with below
dbms_snapshot.refresh (''tk_legacy_acct_stg'',''C'');
Similar Messages
-
Ora-04045 when refreshing materialized view
Can any one help with this error ora-04045 .I get this error when refreshing the materialized view for the first.second time when i refresh the materialized view it gets refreshed.
My database version is 8.1.7.xYes it is enabled.if you refresh for the 1 time it show object invalid when you refresh again it refreshes and object is valid.i am using dbms_refresh pacakge to do this.one more problem is that i have made a procedure in which i am calling dbms_refresh pakcage 8 times to refresh 8 views.if 1 gets refreshed then 2 will not it will fail.i don't understand this behaviour
-
Error when Create Materialized View
Hi
When I tried to create MV show me error :
SQL> @CRIA_MV_ARC_BW.SQL
AND INDUSTRIAL.CD_FABRICA = SUBSTR(ARC.DS_ARC, 1, 3)
ERROR at line 88:
ORA-01031: insufficient privilegesI am using Oracle 9.02 and there are Grant for all Tablles , my query of creation is:
CREATE MATERIALIZED VIEW CLIBGF.MV_ARC_BW
NOCACHE
LOGGING
NOPARALLEL
BUILD IMMEDIATE
REFRESH FORCE
START WITH TO_DATE('26-nov-2009 02:00:00','dd-mon-yyyy hh24:mi:ss')
NEXT trunc(sysdate) + 1/12
ENABLE QUERY REWRITE
AS
SELECT MAX(NVL((SELECT DECODE(A.T$CDNG$O,'F',DECODE(TRIM(B.T$CALC$O),'S','C',A.T$CDNG$O),A.T$CDNG$O)
FROM TRITON.TTDFAT995501 A, TRITON.TTDFAT996501 B
WHERE A.T$OCOM$O + 0 = ARC.CD_UNIDADE_EXPEDIDORA
AND A.T$NDOC$O = NOTAS.CD_NOTA
AND (A.T$OCOM$O = B.T$OCOM$O AND A.T$NREF$O = B.T$NREF$O)
AND ROWNUM =1),
0)) NEGOCIO,
ARC.CD_CLIENTE CD_CLIENTE,
CLIENTE.T$NAMA DS_CLIENTE,
ARC.CD_ARC,
ARC.CD_STATUS,
ARC.CD_STATUS || ' - ' || STATUS.DS_STATUS STATUS,
TO_CHAR(ARC.DT_EMISSAO, 'DD/MM/YYYY') DT_EMISSAO,
TO_CHAR(ACAO_INV.DT_REALIZADO, 'DD/MM/YYYY') DT_REALIZADO_INVESTIGACAO,
ARC.CD_MARCA || ' - ' || MARCA.T$DSMA$O MARCA,
ARC.CD_PRODUTO CD_PRODUTO,
EMBALAGEM.T$CDAC$O || ' - ' || EMBALAGEM.T$DESC$O DS_EMBALAGEM,
SUBSTR(ARC.DS_ARC, 1, 3) CD_COMPANHIA_PRODUTORA,
ARC.CD_MOTIVO_RECLAMACAO CD_MOTIVO_RECLAMACAO,
MOTIVO.DS_ITEM DS_MOTIVO_RECLAMACAO,
DECODE(ARC.FL_PROCEDENCIA, 0, 'PROCEDENTE', 1, 'IMPROCEDENTE', ' ') PROCEDENCIA,
SUM(NVL((SELECT SUM(NVL(T$IQUA$O, 0))
FROM TRITON.TTDFAT995501 A, TRITON.TTDFAT996501 B
WHERE A.T$OCOM$O + 0 = ARC.CD_UNIDADE_EXPEDIDORA
AND A.T$NDOC$O = NOTAS.CD_NOTA
AND (A.T$OCOM$O = B.T$OCOM$O AND A.T$NREF$O = B.T$NREF$O)),
0)) NR_QUANTIDADE_VENDIDA,
ARC.NR_QUANTIDADE_AFETADA NR_QUANTIDADE_AFETADA,
ARC.NR_QUANTIDADE_AFETADA_REAL NR_QUANTIDADE_AFETADA_REAL,
DS_JUSTIFICATIVA DSJUST
FROM ARCTB_ARC ARC,
ARCTB_NOTAS NOTAS,
ARCTB_TABELA_MOTIVO MOTIVO,
ARCTB_ACAO_IMEDIATA ACAO_INV,
ARCTB_ACAO_IMEDIATA ACAO_IME,
ARCTB_STATUS STATUS,
TRITON.TTCCOM010501 CLIENTE,
TRITON.TTCCOM936501 CIDADE,
TRITON.TTIITM001810 D,
TRITON.TTIITM983501 PRODUTO,
TRITON.TTFGLD010806 CC,
TRITON.TTCCOM983501 MARCA,
TRITON.TTCCOM000501 CIA,
TRITON.TTIITM982501 NAT,
SEI.SIBTB_MULTIMARCA MULTIMARCA,
SEI.SIBTB_DIRETORIA_DEPTO DIRETORIA,
TRITON.TTCCOM994501 USUARIO,
ARCTB_GERENCIA_INDUSTRIAL INDUSTRIAL,
TRITON.TTIITM984501 EMBALAGEM
WHERE ARC.CD_ARC = NOTAS.CD_ARC(+)
AND ARC.CD_ARC = ACAO_INV.CD_ARC(+)
AND ACAO_INV.CD_TIPO_ACAO(+) = 0
AND ACAO_INV.CD_ACAO_IMEDIATA(+) = 999
AND ARC.CD_ARC = ACAO_IME.CD_ARC(+)
AND ACAO_IME.CD_TIPO_ACAO(+) = 1
AND ACAO_IME.CD_ACAO_IMEDIATA(+) = 999
AND ARC.CD_CLIENTE = CLIENTE.T$CUNO(+)
AND CLIENTE.T$ESTA$L = CIDADE.T$ESTA$L(+)
AND CLIENTE.T$CDMU$L = CIDADE.T$MUNI$L(+)
AND TRIM(REPLACE(ARC.CD_PRODUTO, '-', '')) =
TRIM(REPLACE(D.T$ITEM(+), '-', ''))
AND TRIM(REPLACE(ARC.CD_PRODUTO, '-', '')) =
TRIM(REPLACE(PRODUTO.T$ITEM$O(+), '-', ''))
AND PRODUTO.T$PROC$O = NAT.T$PROC$O(+)
AND EMBALAGEM.T$CDAC$O(+) = PRODUTO.T$CDAC$O
AND ARC.CD_MOTIVO_RECLAMACAO = MOTIVO.CD_ITEM(+)
AND ARC.CD_MARCA = MARCA.T$CDMA$O(+)
AND SUBSTR(ARC.DS_ARC, 1, 3) = CIA.T$NCMP(+)
AND ARC.CD_STATUS = STATUS.CD_STATUS(+)
AND TRIM(ARC.CD_CENTRO_CUSTO) = TRIM(CC.T$DIMX(+))
AND CC.T$DTYP(+) = 2
AND CC.T$SUBL(+) = 0
AND ARC.CD_DEPTO_MULTIMARCA = MULTIMARCA.CD_MULTIMARCA(+)
AND ARC.CD_DEPTO = DIRETORIA.CD_DEPTO(+)
AND ARC.CD_USUARIO = TRIM(USUARIO.T$CDUS$O(+))
AND ARC.CD_STATUS IS NOT NULL
AND ARC.CD_MOTIVO_RECLAMACAO = MOTIVO.CD_ITEM(+)
AND INDUSTRIAL.CD_FABRICA = SUBSTR(ARC.DS_ARC, 1, 3)
GROUP BY TO_CHAR(ARC.DT_EMISSAO, 'YYYY'),
TO_CHAR(ARC.DT_EMISSAO, 'MM'),
ARC.CD_ARC,
ARC.DS_ARC,
ARC.DS_SUPERVISOR,
ARC.CD_STATUS,
STATUS.DS_STATUS,
TO_CHAR(ARC.DT_EMISSAO, 'DD/MM/YYYY'),
TO_CHAR(ACAO_INV.DT_ORIGINAL, 'DD/MM/YYYY'),
TO_CHAR(ACAO_INV.DT_REALIZADO, 'DD/MM/YYYY'),
TO_CHAR(ACAO_IME.DT_ORIGINAL, 'DD/MM/YYYY'),
TO_CHAR(ACAO_IME.DT_REALIZADO, 'DD/MM/YYYY'),
TO_CHAR(ARC.DT_PROCEDENCIA, 'DD/MM/YYYY'),
TO_CHAR(ARC.DT_RECEBIMENTO, 'DD/MM/YYYY'),
TO_CHAR(NVL(ARC.DT_APROVACAO_INDUSTRIAL,
ARC.DT_APROVACAO_COMERCIAL),
'DD/MM/YYYY'),
ARC.CD_CLIENTE,
CLIENTE.T$NAMA,
CIDADE.T$DSCA$L,
ARC.CD_MARCA,
MARCA.T$DSMA$O,
ARC.CD_PRODUTO,
D.T$SEAK,
EMBALAGEM.T$CDAC$O || ' - ' || EMBALAGEM.T$DESC$O,
NAT.T$DESC$O,
ARC.NR_LOTE,
ARC.DT_FABRICACAO,
SUBSTR(ARC.DS_ARC, 1, 3),
CIA.T$CITY,
ARC.CD_MOTIVO_RECLAMACAO,
MOTIVO.DS_ITEM,
DECODE(ARC.FL_PROCEDENCIA,
0,
'PROCEDENTE',
1,
'IMPROCEDENTE',
ARC.DS_DISPOSICAO,
ARC.CD_CENTRO_CUSTO,
CC.T$DESC,
ARC.NR_QUANTIDADE_AFETADA,
DS_JUSTIFICATIVA,
DS_DISPOSICAO,
CD_RESPONSAVEL_CAUSA,
ARC.NR_QUANTIDADE_AFETADA_REAL,
ARC.DT_ATENDIMENTO,
MOTIVO.CLASSIFICACAO,
ARC.DS_COORDENADOR,
ARC.FL_ATENDIMENTO,
TO_CHAR(ARC.DT_ATENDIMENTO, 'DD/MM/YYYY'),
ARC.DS_COORDENADOR_INVESTIGACAO,
INDUSTRIAL.REGIAO
ORDER BY ARC.CD_ARC DESC;
Edited by: muttleychess on Nov 25, 2009 10:25 AMPlease see my privilege
GRANTEE PRIVILEGE ADM
CLIBGF CREATE TABLE NO
CLIBGF CREATE ANY VIEW NO
CLIBGF CREATE SNAPSHOT NO
CLIBGF SELECT ANY TABLE NO
CLIBGF CREATE ANY TRIGGER NO
CLIBGF CREATE ANY SNAPSHOT NO -
Error for Refresh Materialized View
Hi, All
I get a error when I refresh the Materialized View, But I can't solve this error.
ORA-12008: error in materialized view refresh path
ORA-04045: errors during recompilation/revalidation of MV_NAME
ORA-00600: internal error code, arguments: [qsmqSetupTableMetadata-2], [], [], [], [], [], [], []
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2255
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2461
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2430
ORA-06512: at line 1
Do you know how I can solve this problem?
Please let me know that.
JWShi,
can u give some info... like whether the MVs are and from where you are trying to refresh...... we also had similiar prob when we tried to refresh the MV in Schema A from Schema B
rgds
Mahesh -
ORA-01841 when refreshing materialized view
Hi,
I have to upgrade my database from oracle 8.1.7.4 to 9.2.0.1.
I have tested two ways to do it :
1) I upgraded my database from 8i to 9i with the u0801070.sql script.
2) I created an empty 9i database and then I exported the data from the 8i database and imported them to the 9i database.
The two procedures worked fine.
But now, when I try to refresh the mateiralized views with DBA Studio on the database upgraded via export/import, I obtain the error : ORA-01841.
On the database upgraded via u0801070.sql, I don't have the problem.
Why do I have this error ?
Regards,
Rachel TREBUCHET DANJOUError: ORA 1841
Text: (full) year must be between -4713 and +4713 / +9999
Cause:
Action:
*** Important: The notes below are for experienced users - See Note 22080.1
Explanation:
Eg: In a clause like "to_date('XXXX','YYYY')" XXXX is outside of the
range -4713 and +4713.
Note that Year 0 is invalid too. See Bug 106242 for an explanation..
Typically this involves "to_date('00','YYYY')" or similar which is
invalid. It is probably better to use 'RR' rather than 'YY' which
prefixes with an appropriate century.
Eg:
select to_char(to_date('00','yyyy')) from dual;
ORA-01841: (full) year must be between -4713 and +4713
select to_char(to_date('00','rr')) from dual;
01-MAR-2000
Year 2000
~~~~~~~~~
You may also see this error if using a TO_DATE() function
on a date column (or SYSDATE) and your sessions NLS_DATE_FORMAT
includes a 2 digit year mask (RR or YY).
eg: alter session set nls_date_format='DD-MON-RR';
select to_date(sysdate,'DD-MON-YYYY') from dual;
"ORA-01841: (full) year must be between -4713 and +9999, and not be 0"
This is because TO_DATE() expects to work on a CHARACTER
data type and so there is an implicit conversion from
DATE to CHAR.
eg: In the above example SYSDATE of 01-JAN-2000 is implictly
converted to the character string "01-JAN-00", which is
then converted back to a date using a DD-MON-YYYY date format.
This gives a year of 0000 which is invalid, hence ORA-1841.
Note: From Oracle 7.2 onwards the UPPER bound is +9999 and not +4713
Regards,
Reza -
Unable to refresh Materialized view group when an Mview is added
Hi,
I have 8 MVs present in my DB and added them to a MV refresh group. But I am getting the error below when I try to refresh the group.
SQL> exec DBMS_REFRESH.refresh('MVRFRSHGRP_EAIGHD');
begin DBMS_REFRESH.refresh('MVRFRSHGRP_EAIGHD'); end;
ORA-12048: error encountered while refreshing materialized view "MYUAT"."MV_EAI_PJRM_EMP_ALLOC_DTLS"
ORA-12018: following error encountered during code generation for "MYUAT"."MV_EAI_PJRM_EMP_ALLOC_DTLS"
ORA-00942: table or view does not exist
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2563
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2776
ORA-06512: at "SYS.DBMS_IREFRESH", line 685
ORA-06512: at "SYS.DBMS_REFRESH", line 195
ORA-06512: at line 1
SQL> Actually the view MV_EAI_PJRM_EMP_ALLOC_DTLS exists and MVlog$ are present at source site.
When I remove this view from the group, I am able to refresh it successfully.
I destroyed the group, recreated and added all the views and tried. But no luck.
Can some one suggest what could be the problem?
Regards
DeepHi,
You didn't leave a version (Again), so I can only guess.
You may be suffering from
Bug 10096159 ORA-12048 error message raised by DBMS_REFRESH.REFRESH is not corrrect
Meaning it could be a different MV that fails to refresh.
Regards
Peter
Edit:
Versions confirmed as being affected (There could be others, mind)
11.2.0.1
11.1.0.7
10.2.0.5
10.2.0.3
Edited by: Peter on Sep 4, 2012 8:45 AM -
Error While Creating Fast Refresh Materialized view.
Table Scripts:
CREATE TABLE CONTRACT_MASTER
CONTRACT_SEQ NUMBER(10) NOT NULL,
PDN CHAR(5) NOT NULL,
APPID NUMBER(10) NOT NULL,
CONTRACT_LOB_DESC VARCHAR2(20) NOT NULL,
CUSTOMER_NAME VARCHAR2(57) NOT NULL,
CONTRACT_DT DATE NOT NULL,
CONTRACT_RECD_DT DATE NOT NULL,
HELD_OFFERING_DT DATE NOT NULL,
DRAFT_AMT NUMBER(15,2) NOT NULL,
STATUS_DESC VARCHAR2(20) NOT NULL,
GIF_UPLOAD_TM TIMESTAMP NOT NULL
CREATE table CONTRACT_COMMENTS
CONTRACT_COMMENTS_SEQ NUMBER(10) NOT NULL,
APPID NUMBER(10) NOT NULL,
COMMENTS VARCHAR2(1000) NOT NULL,
GIF_UPLOAD_TM TIMESTAMP NOT NULL
Constraints on tables
ALTER TABLE CONTRACT_MASTER ADD
CONSTRAINT XPKCONTRACT_MASTER PRIMARY KEY (CONTRACT_SEQ) USING INDEX ;
ALTER TABLE CONTRACT_COMMENTS ADD
CONSTRAINT XPKCONTRACT_COMMENTS PRIMARY KEY (CONTRACT_COMMENTS_SEQ) USING INDEX ;
alter table CONTRACT_MASTER add CONSTRAINT XUIAPPCONTRACT_MASTER UNIQUE (APPID) USING INDEX;
CREATE INDEX XUIAPPCONTRACT_COMMENTS ON
CONTRACT_COMMENTS(APPID) ;
Materialized View Creation:
CREATE MATERIALIZED VIEW LOG ON CONTRACT_MASTER WITH PRIMARY KEY,ROWID;
CREATE MATERIALIZED VIEW LOG ON CONTRACT_COMMENTS WITH PRIMARY KEY, ROWID;
CREATE MATERIALIZED VIEW MV_CONTRACT_COMMENTS_HELDOFFERING
REFRESH FAST
ENABLE QUERY REWRITE AS
SELECT APPID,COMMENTS FROM CONTRACT_COMMENTS WHERE APPID IN (
SELECT APPID FROM CONTRACT_MASTER WHERE STATUS_DESC = 'Held Offering' )
Errors generated:
ERROR at line 4:
ORA-12015: cannot create a fast refresh materialized view from a complex query
_*Afer That I have changed the query but still it was not created like:*_
CREATE MATERIALIZED VIEW MV_CONT_COMMNTS_HELDOFFERNG
REFRESH FAST
ENABLE QUERY REWRITE AS
SELECT CONTRACT_COMMENTS_SEQ,c.APPID,COMMENTS
FROM CONTRACT_COMMENTS c,CONTRACT_MASTER m
WHERE m.APPID = c.APPID and m.STATUS_DESC = 'Held Offering'
*even though error displayed:
SQL> CREATE MATERIALIZED VIEW MV_CONT_COMMNTS_HELDOFFERNG*
2 REFRESH FAST
3 ENABLE QUERY REWRITE AS
4 SELECT CONTRACT_COMMENTS_SEQ,c.APPID,COMMENTS
5 FROM CONTRACT_COMMENTS c,CONTRACT_MASTER m
6 WHERE m.APPID = c.APPID and m.STATUS_DESC = 'Held Offering';
FROM CONTRACT_COMMENTS c,CONTRACT_MASTER m
ERROR at line 5:
ORA-12052: cannot fast refresh materialized view GSSIO.MV_CONT_COMMNTS_HELDOFFERNG
*Again I have done "Analyzing Materialized Views for Fast Refresh" as follows:*
1: exec dbms_mview.explain_mview('MV_CONT_COMMNTS_HELDOFFERNG');
2: SELECT capability_name, possible, SUBSTR(msgtxt,1,60) AS msgtxt
FROM mv_capabilities_table
WHERE capability_name like '%FAST%';
Output is :
CAPABILITY_NAME P MSGTXT
REFRESH_FAST N
REFRESH_FAST_AFTER_INSERT N the SELECT list does not have the rowids of all the detail t
REFRESH_FAST_AFTER_ONETAB_DML N see the reason why REFRESH_FAST_AFTER_INSERT is disabled
REFRESH_FAST_AFTER_ANY_DML N see the reason why REFRESH_FAST_AFTER_ONETAB_DML is disabled
REFRESH_FAST_PCT N PCT is not possible on any of the detail tables in the mater
Please suggest what to do to implement fast refresh materialized view for same.Edited by: dba on Sep 20, 2010 12:00 AMIf the two MVs have to be consistent with each other as of a specific time, put them into a Refresh Group and refresh them with DBMS_MVIEW.REFRESH
If an MV is dependent on another, use DBMS_MVIEW.REFRESH_DEPENDENT
See the "Oracle® Database PL/SQL Packages and Types Reference" documentation pages for DBMS_MVIEW.
Hemant K Chitale
http://hemantoracledba.blogspot.com --- this is NOT a documentation site.
Edited by: Hemant K Chitale on Sep 20, 2010 5:19 PM -
How does materialized view work when refresh the view vs create the view?
I am using a materialized view, and I cant set it to fast refresh because some of the tables are from remote database which does not have materialized view log.
When I create the materialized view, it took like 20 30 seconds. however when I was trying to refresh it. It took more than 2 3 hours. and total number of records are only around 460,000.
I understand that when the view refreshes, it would take extra step like purge the table however I am not sure why it made so much difference in execution time perspective...
Does the dbms_mview.refresh('MY_MATVIEW', 'C', atomic_refresh=>false) do the same exact insert as when I created the view?
Could anyone please let me know how would this happen? Thanks,
Code looks like as following
create materialized view MY_MV1
refresh force on demand
start with to_date('20-02-2013 22:00:00', 'dd-mm-yyyy hh24:mi:ss') next trunc(sysdate)+1+22/24
as
( SELECT Nvl(Cr.Sol_Chng_Num, ' ') AS Change_Request_Nbr,
Nvl(Sr.Sr_Num, ' ') AS Service_Request_Nbr,
Nvl(Sr.w_Org_Id, 0) AS Org_Id,
Fcr.rowid,
Cr.rowid,
Bsr.rowid,
Sr.rowid,
SYSDATE
FROM [email protected] Fcr
INNER JOIN [email protected] Cr
ON Fcr.w_Sol_Chng_Id = Cr.w_Sol_Chng_Id
INNER JOIN [email protected] Bsr
ON Fcr.w_Sol_Chng_Id = Bsr.w_Sol_Chng_Id
INNER JOIN [email protected] Sr
ON Sr.w_Srv_Rec_Id = Bsr.w_Srv_Rec_Id
WHERE Sr.Sr_Num !='NS'
);I have tried to use dbms_mview.refresh('MY_MATVIEW', 'C', atomic_refresh=>false) but it still took 141 mins to run... vs 159 mins without atomic_refresh=>false
Edited by: 986006 on Feb 20, 2013 2:15 PMWelcome to the forum!
Whenever you post provide your 4 digit Oracle version (result of SELECT * FROM V$VERSION)
>
I am using a materialized view, and I cant set it to fast refresh because some of the tables are from remote database which does not have materialized view log.
When I create the materialized view, it took like 20 30 seconds. however when I was trying to refresh it. It took more than 2 3 hours. and total number of records are only around 460,000.
I understand that when the view refreshes, it would take extra step like purge the table however I am not sure why it made so much difference in execution time perspective...
Does the dbms_mview.refresh('MY_MATVIEW', 'C', atomic_refresh=>false) do the same exact insert as when I created the view?
>
What Oracle version are you using? The 'atomic_refresh' parameter default was changed to TRUE starting with 10g.
See the PL/SQL Packages and Types doc
>
atomic_refresh
If this parameter is set to true, then the list of materialized views is refreshed in a single transaction. All of the refreshed materialized views are updated to a single point in time. If the refresh fails for any of the materialized views, none of the materialized views are updated.
If this parameter is set to false, then each of the materialized views is refreshed in a separate transaction.
>
What that means is that if the value is TRUE Oracle uses a DELETE to remove the existing rows. If the value is FALSE then Oracle uses TRUNCATE.
If you really are using the FALSE setting you should not be seeing that much of a time difference between creating the MV and a complete refresh so something else must be going on. -
Reg:package code to refresh materialized views
i am new to pl/sql packages and procedures.i want it to execute for running mappings in informatica which takes 0 and gives 1 when executed successfully
create or replace PACKAGE BODY pkg_refresh_mv as
procedure prc_mv (p_mv_name varchar2) is
begin
dbms_mview.refresh (p_mv_name);
end prc_mv;
procedure refresh_all_mv (proc_response IN OUT number) is
begin
dbms_mview.refresh('materialized view','C');
dbms_mview.refresh('materialized view','C');
proc_response := 1;
exception
when others then
proc_response := 0;
end refresh_all_mv ;
end pkg_refresh_mv;
when i execute this code i get the following errors
PLS-00201: identifier 'PKG_REFRESH_MV' must be declared
PLS-00304: cannot compile body of 'PKG_REFRESH_MV' without its specification
what needs to be changed
thankstry this one :
CREATE OR REPLACE PACKAGE pkg_refresh_mv
AS
PROCEDURE prc_mv (p_mv_name VARCHAR2);
PROCEDURE refresh_all_mv (proc_response IN OUT NUMBER);
END pkg_refresh_mv;
CREATE OR REPLACE PACKAGE BODY pkg_refresh_mv
AS
PROCEDURE prc_mv (p_mv_name VARCHAR2)
IS
BEGIN
dbms_mview.refresh (p_mv_name);
END prc_mv;
PROCEDURE refresh_all_mv (proc_response IN OUT NUMBER)
IS
BEGIN
dbms_mview.refresh ('materialized view', 'C');
dbms_mview.refresh ('materialized view', 'C');
proc_response := 1;
EXCEPTION
WHEN OTHERS
THEN
proc_response := 0;
END refresh_all_mv;
END pkg_refresh_mv;
/ -
Refresh Materialized View in a package
Refresh Materialized View in a process.
I have a USER2.Materialized view and when I want to refresh it I execute:
execute dbms_mview.refresh('MV_FACT_SALES','C');
But I have the ETL process in a USER1.package
The User1 needs any Materialized View Grant or any privilegie?
How can I refresh the Materialized View in a procedure in the USER1.package?I 'm sorry, but I want to create a procedure under USER2 and when I execute the script to create it I receive the error:
ORA-06550: line 4, column 12:
PLS-00103: Encountered the symbol "DBMS_MVIEW" when expecting one of the following:
:= . ( @ % ; immediate
The symbol ":=" was substituted for "DBMS_MVIEW" to continue.
Te script procedure is:
PROCEDURE REFRESH_MV IS
BEGIN
execute dbms_mview.refresh('MV_FACT_SALES','C');
END;
How can I refresh a Materialized view in a procedure?
Thanks! -
ORA-12015: cannot create a fast refresh materialized view from a complex qu
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - ProductionI'm trying to create a fast refresh materialized view that uses a column of xmltype. The problem is I cannot create an MV log that accounts for the xmltype column. I tried excluding it and got the above error. Is there another way I can incrementally update a materialized view where I don't have to do a COMPLETE refresh or use FAST refresh?
CREATE TABLE "DAS_DESC"."AUTHORITY_TEST"
"NAID" NUMBER(20,0) NOT NULL ENABLE,
"AUTH_TYPE" VARCHAR2(40 BYTE),
"XML_DATA" "SYS"."XMLTYPE" ,
"TERM_NAME" VARCHAR2(4000 BYTE)
CREATE TABLE "DAS_DESC"."AUTH_ASSC_TEST"
"NAID" NUMBER(20,0),
"P_NAID" NUMBER(20,0),
"REL_TYPE" VARCHAR2(25 BYTE),
"XML_DATA" "SYS"."XMLTYPE"
CREATE
MATERIALIZED VIEW person_mv
AS
SELECT p.naid
, p.auth_type
, INSERTCHILDXML
p.xml_data -- Parent XML Column
, '//*[contains(local-name(), ''person'')]' --XPATH to Person
, 'nonPreferredHeadingArray' -- Value for new child element
( -- Sub query for injecting new variant person array
SELECT XMLELEMENT
"nonPreferredHeadingArray"
, XMLAGG -- Aggregator for Variant Persons Array
XMLELEMENT
"variantPersonName" -- Wrapper for each entry in array
, extract(a.xml_data,'*/*')
FROM auth_assc_table -- Link table
WHERE a.p_naid = p.naid
) AS XML_DATA
FROM authority p -- Parent table
WHERE p.auth_type = 'Person';The views are created fine and they work perfectly for what we need. The problem is the refresh when we edit the base tables. Ideally, it should take a couple seconds. Right now, it takes a couple minutes. XMLTYPE is one problem and the Complex Query exception is the other. If there is a work-around for fast refresh, please let me know. Greatly appreciated.jjmdb wrote:
I'm trying to create a fast refresh materialized view that uses a column of xmltype. The problem is I cannot create an MV log that accounts for the xmltype column. I tried excluding it and got the above error. Is there another way I can incrementally update a materialized view where I don't have to do a COMPLETE refresh or use FAST refresh? Besides XMLTYPE column, your MV definition has a subquery which prevents it from being fast refreshable.
I could not find any specific reference in documentation about restriction on XMLTYPE (or CLOB) columns but it seems logical that oracle will not be able to keep track of changes to binary data. What does DBMS_MVIEW.EXPLAIN_MVIEW generate for your MV definition? That should tell you which all conditions (for FAST REFRESH) your MV violates. Since you can not create a MV LOG to include XMLTYPE column, it will not be possible to create a FAST REFRESHABLE MV that includes the XMLTYPE column.
I am afraid there is not much you can do here unless you are prepared to change the way data is stored in your base tables. If you can store data in base tables using standard data types instead of binary/XML storage, you might be able to create a FAST REFRESHABLE MV. -
Refresh materialized view on fast refresh
Hi,
I want to create a fast refresh on a materialized view but i kept getting ORA-12015: cannot create a fast refresh materialized view from a complex query. When I did a complete refresh on the materialzed view, it completed. I have create a materialized view log for the table. In my materialized view script, I have included a user defined function. Does db version 10g have the capability to do a fast refresh?
ThanksWhat is the query you are using for the MV?
The error message says it all... "cannot create a fast refresh materialized view from a complex query"
If your query is complex then you will have to perform complete refreshes.
One way around can be to fast refresh all tables in the query then create a view on them based on the 'complex' query. Admittedly this is only a workaround in certain scenarios.
Check out the documentation...
http://68.142.116.70/docs/cd/B19306_01/server.102/b14226/repmview.htm#sthref422 -
Error when refreshing WEBI report with Universe Connection Type "SSO"
Hi Experts:
We are trying to refresh the Webi report in Infoview with Universe Connection set as "Use Single Sign On when refreshing the report at view time", so that we can leverage SAP OLAP authorization variable from Bex Query which the Universe is built on.
However got the error of "incomplete logon data" after all the configurations done following below blogs:
SNC Part 1
/people/ingo.hilgefort/blog/2009/07/03/businessobjects-enterprise-and-client-side-snc-part-1-of-2
SNC Part 2
/people/ingo.hilgefort/blog/2009/07/03/businessobjects-enterprise-and-client-side-snc-part-2-of-2
We already have Win AD SSO to SAP setup, and in BO CMC, Win AD user is mapped to SAP user ID.
The SNC settings are:
- AD Account: service.test.bobj (all lower-letters)
- 32-bit gsslib on the BO server, and 64 bit on the BW server side.
- SNC0: p:service.test.bobj at DOMAIN
- SU01 --> BO_Service ; SNC: p:service.test.bobj at DOMAIN
- Entitlement system tab --> username: BO_Service
SNC Name: p:service.test.bobj at DOMAIN
- SNC settings tab:
SNC Lib: c:\winnt\gsskrb5.dll
Mutual Authentication settings: p:SAPServiceBP0 at DOMAIN
In CMC, the role can be imported if "RFC activated" option unchecked in SNC0.
I found a few threads on the same topic, but they are all not answered:
SNC Client side configuration error
SNC Configuration Error: Incomplete logon Data
Can you please provide details of the solution if you have impleted a same scenario successsfully, or any thoughts to help the investigation?
Thanks in advance!
Regards,
JonathanHi Ingo,
Sorry for taking so long to reply, we are trying to set up server side trust and enable SSO; but we still couldn't success.
What we did is:
1. We followed installation guide chapter 6, generate certificate and PSE, etc. All looks good.
2. Then we still have the "incomplete logon data" error when refreshing webi report after logon using Windows AD user ID.
3. Then we trace the PFC connection, the log is as below. We checked several BO notes, e.g. 1500150, 1461247.. The part bothers us is that we even don't have URI displayed in the log when system trying to use SNC, and we couldn't get more info on this which make us very difficult to diagnosis.
Can you please help? Thanks a lot!
Thu Mar 31 10:54:46.857 ThreadID<1980> SAPMODULE : SAPAuthenticationService: Authentication model for SAP connectivity is SSO
Thu Mar 31 10:54:46.857 ThreadID<1980> SAPMODULE : SAPAuthenticationService: Determining if we can connect using SNC. Calling CanAuthenticate...
Thu Mar 31 10:54:46.919 ThreadID<1980> SAPMODULE : SAPAuthenticationService: Unable to authenticate using SNC because the URI does not meet the minimum connection requirements.
Thu Mar 31 10:54:46.919 ThreadID<1980> SAPMODULE : SAPAuthenticationService: Determining if we can connect using SSO. Calling CanAuthenticate...
Thu Mar 31 10:54:46.919 ThreadID<1980> SAPMODULE : SAPAuthenticationService: Authentication model for SAP connectivity is SSO
Thu Mar 31 10:54:47.013 ThreadID<1980> SAPMODULE : SAPAuthenticationService: The SAP SSO authentication process will fail because the SAP secondary credential are not properly updated and the password is blank.
Thu Mar 31 10:54:47.013 ThreadID<1980> SAPMODULE : SAPAuthenticationService: Trying to connect to SAP using this URI : occa:sap://;PROVIDER=sapbw_bapi,R3NAME=PB0,GROUP=BI_Group1,MSHOST=sapaupdb04,LANG=en,CLIENT=100,CATALOG="ZSPUM602",CUBE="ZSPUM602/ZSPUM602_Q50"
Thu Mar 31 10:54:47.013 ThreadID<1980> SAPMODULE : SAPAuthenticationService: Calling m_pRfcWrapper->RfcOpenEx() ...
Thu Mar 31 10:54:47.154 ThreadID<1980> SAPMODULE : SAPAuthenticationService: RfcOpenEx(...) returned 0
Thu Mar 31 10:54:47.154 ThreadID<1980> SAPMODULE : SAPAuthenticationService: Call to m_pRfcWrapper->RfcOpenEx() took 0.141 seconds
Thu Mar 31 10:54:47.154 ThreadID<1980> SAPMODULE : SAPAuthenticationService: SAPAuthenticationService::~SAPAuthenticationService -
Creation of fast refresh materialized view
Hi,
I am creating fast refreshable materialized view.At that time i am getting error message
ORA-12052: cannot fast refresh materialized view OPS$QDW.EMP_DEPT_MV
I created log's also on that tables(emp,dept)
Please Help me any body.
I am using oracle 8.1.7.4.0
below the scripts i created
CREATE MATERIALIZED VIEW LOG ON emp
tablesspace vijay_test
WITH ROWID
INCLUDING NEW VALUES
CREATE MATERIALIZED VIEW LOG ON DEPT
tablesspace vijay_test
WITH ROWID
INCLUDING NEW VALUES
CREATE MATERIALIZED VIEW emp_dept_mv
TABLESPACE vijay_test
BUILD IMMEDIATE
REFRESH FAST
ENABLE QUERY REWRITE
as
select e.ename,e.empno,e.deptno,d.loc from emp e, dept d
where e.deptno=d.deptnoIt will be possible to create a Materialised view with up to 20 tables, but you have to understand the restrictions on complex Materialised views with regards to fast refresh.
To help your understanding, refer to Materialized View Concepts and Architecture
<br>
Oracle Database FAQs
</br> -
ORA-12015: cannot create a fast refresh materialized view from a complex q
Hi,
I'm facing very strange problem. Please help me why this error is coming
I'm creating a simple materialized view, but it is giving below error since this is simple select * from.
CREATE MATERIALIZED VIEW EFMS.MS_TASK
BUILD IMMEDIATE
REFRESH FAST
START WITH SYSDATE
NEXT (SYSDATE + 1/24)
WITH ROWID
AS
SELECT * FROM MS_TASK@efms_link;
SELECT * FROM MS_TASK@efms_link
ERROR at line 8:
ORA-12015: cannot create a fast refresh materialized view from a complex query
CREATE MATERIALIZED VIEW LOG ON MSDBO.MS_TASK
TABLESPACE DBOR_MVLOG
PCTUSED 0
PCTFREE 60
INITRANS 20
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
NOCACHE
NOLOGGING
PARALLEL ( DEGREE 2 INSTANCES 1 )
WITH ROWID, PRIMARY KEY
EXCLUDING NEW VALUES;1º
Not is a best practice to use 'select *'
2º
ORA-12015: cannot create a fast refresh materialized view from a complex query
Cause: Neither ROWIDs and nor primary key constraints are supported for complex queries.
Action: Reissue the command with the REFRESH FORCE or REFRESH COMPLETE option or create a simple materialized view.
Then you have to change REFRESH FAST or create a primary key in MS_TASK@efms_link to avility fast refresh.
. :-) any help with my english is wellcome :-) .
Maybe you are looking for
-
Hi all, i am going on holiday soon and want to watch all the movie from itunes however my ipad is only 16gb and cannot hold all the videos, any advice on how i could watch the films on my ipad my connecting it too my ipod touch (32GB) or iphone (32gb
-
External HD with USB Connection no longer recognized
Hi, I have read all the posts here and in most cases the problems are with an external HD that uses Firewire. Mine uses USB. It has been working fine for a year and now it won't show up on the desktop. I went to Disk Utility and it was there. When I
-
How can I install CS5 on a new/replacement laptop? I paid full price in 2011 and have the key (and it shows up in my Adobe account under products), but it was a downloaded product and I can't find a download of that version online and my key doesn't
-
N73 Music Library Problem - App.closed
Hello everyone, I have an N73 mobile phone and I have a problem with my music library. every time I try to update/refresh my music library I get the following error message: App.closed: MusicCollectionSrv User11 What can I do to resolve this problem?
-
Material Master data transfer using IDOC
Hi, I am working on integration scenario with SAp ECC. we are using SAp PI wherein SAP PI is posting data In SAP ECC using standard IDOC for Material master i.e MATMAS05 You might be aware that while material master creation if we pass Plant value th