Re: [oracle_br] Materialized View

2016-05-17 Por tôpico Rafael Mendonca raffaell.t...@yahoo.com [oracle_br]
*OBS*: A MV não se pode mudar o nome da MV, pois é usada em centenas de lugares 
na aplicação.
 

Em Terça-feira, 17 de Maio de 2016 14:56, "Rafael Mendonca 
raffaell.t...@yahoo.com [oracle_br]"  escreveu:
 

     Senhores, bom dia.
** Oracle 11.2.0.4 EE.

Alguns desenvolvedores estão testando recriar uma view materializada que 
precisa ser modificada. Consultando a view dba_objects com o nome da MV, temos:
SQL> SELECT * FROM DBA_OBJECTS WHERE OBJECT_NAME = 'XUXA'
Que me retorna duas linhas:
Uma linha com o tipo de objeto **MV** e  a outra linha do tipo **TABLE**.
Para alterar o código do view, o desenvolvedor dropou e recriou a view, segue:
SQL> DROP MATERIALIZED VIEW XUXA;
SQL> CREATE MATERIALIZED VIEW XUXA
REFRESH FAST  ON DEMAND
WITH PRIMARY KEY
AS
SELECT COL1,
   COL2,
   COL3
FROM XUXA;
ORA-00955: nome já está sendo usado por um objeto existente

** Minha primeira dúvida é a seguinte:
Como é que poderia existir em minha base anteriormente, e que estava 
funcionando, uma MV que continha o mesmo nome de uma tabela e que essa mesma 
tabela fazia parte da consulta da MV?


Olhando pelo lado lógico do problema (até onde eu sei), uma materialized view 
apenas guarda o metadados (definição da consulta, período de atualização, tipo 
de atualização, etc), e quando uma MV é criada, o RDBMS Oracle, implicitamente, 
cria uma tabela "por baixo" que é justamente aonde o RDBMS Oracle irá buscar os 
dados. 

Pesquisando mais um pouco, percebi que existe uma forma de criar uma view 
materializada com o mesmo nome de uma tabela, mas que essa tabela não pode ser 
usada na mesma consulta da MV, o que não é o meu caso.
Estou precisando de algumas dicas em relação a esse problema que estou 
enfrentando, não posso deixar passar alguns scripts que já estão prontos para 
serem aplicados em produção antes de estar bem seguro em relação a esse 
problema.







  #yiv0888797259 #yiv0888797259 -- #yiv0888797259ygrp-mkp {border:1px solid 
#d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv0888797259 
#yiv0888797259ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv0888797259 
#yiv0888797259ygrp-mkp #yiv0888797259hd 
{color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 
0;}#yiv0888797259 #yiv0888797259ygrp-mkp #yiv0888797259ads 
{margin-bottom:10px;}#yiv0888797259 #yiv0888797259ygrp-mkp .yiv0888797259ad 
{padding:0 0;}#yiv0888797259 #yiv0888797259ygrp-mkp .yiv0888797259ad p 
{margin:0;}#yiv0888797259 #yiv0888797259ygrp-mkp .yiv0888797259ad a 
{color:#ff;text-decoration:none;}#yiv0888797259 #yiv0888797259ygrp-sponsor 
#yiv0888797259ygrp-lc {font-family:Arial;}#yiv0888797259 
#yiv0888797259ygrp-sponsor #yiv0888797259ygrp-lc #yiv0888797259hd {margin:10px 
0px;font-weight:700;font-size:78%;line-height:122%;}#yiv0888797259 
#yiv0888797259ygrp-sponsor #yiv0888797259ygrp-lc .yiv0888797259ad 
{margin-bottom:10px;padding:0 0;}#yiv0888797259 #yiv0888797259actions 
{font-family:Verdana;font-size:11px;padding:10px 0;}#yiv0888797259 
#yiv0888797259activity 
{background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv0888797259
 #yiv0888797259activity span {font-weight:700;}#yiv0888797259 
#yiv0888797259activity span:first-child 
{text-transform:uppercase;}#yiv0888797259 #yiv0888797259activity span a 
{color:#5085b6;text-decoration:none;}#yiv0888797259 #yiv0888797259activity span 
span {color:#ff7900;}#yiv0888797259 #yiv0888797259activity span 
.yiv0888797259underline {text-decoration:underline;}#yiv0888797259 
.yiv0888797259attach 
{clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 
0;width:400px;}#yiv0888797259 .yiv0888797259attach div a 
{text-decoration:none;}#yiv0888797259 .yiv0888797259attach img 
{border:none;padding-right:5px;}#yiv0888797259 .yiv0888797259attach label 
{display:block;margin-bottom:5px;}#yiv0888797259 .yiv0888797259attach label a 
{text-decoration:none;}#yiv0888797259 blockquote {margin:0 0 0 
4px;}#yiv0888797259 .yiv0888797259bold 
{font-family:Arial;font-size:13px;font-weight:700;}#yiv0888797259 
.yiv0888797259bold a {text-decoration:none;}#yiv0888797259 dd.yiv0888797259last 
p a {font-family:Verdana;font-weight:700;}#yiv0888797259 dd.yiv0888797259last p 
span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv0888797259 
dd.yiv0888797259last p span.yiv0888797259yshortcuts 
{margin-right:0;}#yiv0888797259 div.yiv0888797259attach-table div div a 
{text-decoration:none;}#yiv0888797259 div.yiv0888797259attach-table 
{width:400px;}#yiv0888797259 div.yiv0888797259file-title a, #yiv0888797259 
div.yiv0888797259file-title a:active, #yiv0888797259 
div.yiv0888797259file-title a:hover, #yiv0888797259 div.yiv0888797259file-title 
a:visited {text-decoration:none;}#yiv0888797259 div.yiv0888797259photo-title a, 
#yiv0888797259 div.yiv0888797259photo-title a:active, #yiv0888797259 
div.yiv0888797259photo-title a:hover, #yiv0888797259 
div.yiv0888797259photo-title a:visited 

[oracle_br] Materialized View

2016-05-17 Por tôpico Rafael Mendonca raffaell.t...@yahoo.com [oracle_br]
Senhores, bom dia.
** Oracle 11.2.0.4 EE.

Alguns desenvolvedores estão testando recriar uma view materializada que 
precisa ser modificada. Consultando a view dba_objects com o nome da MV, temos:
SQL> SELECT * FROM DBA_OBJECTS WHERE OBJECT_NAME = 'XUXA'
Que me retorna duas linhas:
Uma linha com o tipo de objeto **MV** e  a outra linha do tipo **TABLE**.
Para alterar o código do view, o desenvolvedor dropou e recriou a view, segue:
SQL> DROP MATERIALIZED VIEW XUXA;
SQL> CREATE MATERIALIZED VIEW XUXA
REFRESH FAST  ON DEMAND
WITH PRIMARY KEY
AS
SELECT COL1,
   COL2,
   COL3
FROM XUXA;
ORA-00955: nome já está sendo usado por um objeto existente

** Minha primeira dúvida é a seguinte:
Como é que poderia existir em minha base anteriormente, e que estava 
funcionando, uma MV que continha o mesmo nome de uma tabela e que essa mesma 
tabela fazia parte da consulta da MV?


Olhando pelo lado lógico do problema (até onde eu sei), uma materialized view 
apenas guarda o metadados (definição da consulta, período de atualização, tipo 
de atualização, etc), e quando uma MV é criada, o RDBMS Oracle, implicitamente, 
cria uma tabela "por baixo" que é justamente aonde o RDBMS Oracle irá buscar os 
dados. 

Pesquisando mais um pouco, percebi que existe uma forma de criar uma view 
materializada com o mesmo nome de uma tabela, mas que essa tabela não pode ser 
usada na mesma consulta da MV, o que não é o meu caso.
Estou precisando de algumas dicas em relação a esse problema que estou 
enfrentando, não posso deixar passar alguns scripts que já estão prontos para 
serem aplicados em produção antes de estar bem seguro em relação a esse 
problema.









Re: [oracle_br] Materialized View X Scheduler Job

2012-07-18 Por tôpico Rodrigo Mufalani



Boa tarde,

  Testa assim... 


BEGIN
  SYS.DBMS_SCHEDULER.CREATE_JOB
    (
   job_name   
= 'SYSTEM.NOME_DO_SEU_JOB'
  ,start_date  =
TO_TIMESTAMP_TZ('2012/01/21 20:35:11.00 -02:00','/mm/dd hh24:mi:ss.ff 
tzh:tzm')
  ,repeat_interval = 'FREQ=WEEKLY'
 
,end_date    = NULL
 
,job_class   = 'DEFAULT_JOB_CLASS'
 
,job_type    = 'PLSQL_BLOCK'
 
,job_action  = 'begin
  

 
dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'');
 
end;'
  ,comments    = ' Algum
comentário sobre a rotina...'
    );

END;
/


O GUOB
será no dia 11/08/2012 faça sua inscrição em www.guob.com.br 

Atenciosamente,

Rodrigo Mufalani
Oracle Ace Member
http://www.mufalani.com.br






Temos algumas MVs que são atualizadas por Jobs conforme o exemplo abaixo:


begin

 
sys.dbms_job.submit(job = :job,

  what =
'dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'');',

 
next_date = to_date('19-07-2012 03:00:00', 'dd-mm- hh24:mi:ss'),

  interval
= 'trunc(sysdate)+1.125');

  commit;

end;

/

Temos migrado nossos
dbmsjobs para Scheduler_Jobs  , porem esses referentes a MVs não conseguimos 
fazer funcionar.

É possível colocar a MV para ser atualizada via scheduller Jobs? Se sim, tem 
algum segredo? O que
estamos tentando
fazer é o que segue


begin

 
sys.dbms_scheduler.create_job(job_name= 
'DM_AGRIC.AGR_PRODUCOES_MV',

  
 job_type= 'STORED_PROCEDURE',

job_action 
= 'dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'')',

start_date
 = to_date('18-07-2012 02:00:00', 'dd-mm- hh24:mi:ss'),

   
repeat_interval = 'Freq=Daily',

end_date=
to_date(null),

job_class   = 'DBMS_JOB$',

  
 enabled = true,

auto_drop  
= false,

comments= '');

end;

/

Nosso banco é o 11G las release.

Retorna o erro ORA-27452 , mas garanto que a MV em
questão existe no banco.




[cid:9015F81F-1F1D-49EC-9994-0ACEF7845BA3]
[cid:F6DD4024-FF08-4B1F-9260-E61B8D4F9124]


[As partes desta mensagem que não continham texto
foram removidas]







[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Materialized View X Scheduler Job

2012-07-18 Por tôpico Alexandre Rocha Plácido
Rodrigo

Valeu. Funcionou.
[cid:A613D270-13A6-4E0E-8CBF-B7B47BE01E88]
[cid:29382225-BE9C-4776-92C9-A1EB6BC71C0E]

From: Rodrigo Mufalani rodr...@mufalani.com.brmailto:rodr...@mufalani.com.br
Reply-To: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
Date: quarta-feira, 18 de julho de 2012 15:23
To: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Materialized View X Scheduler Job




Boa tarde,

  Testa assim...

BEGIN
  SYS.DBMS_SCHEDULER.CREATE_JOB
(
   job_name
= 'SYSTEM.NOME_DO_SEU_JOB'
  ,start_date  =
TO_TIMESTAMP_TZ('2012/01/21 20:35:11.00 -02:00','/mm/dd hh24:mi:ss.ff 
tzh:tzm')
  ,repeat_interval = 'FREQ=WEEKLY'

,end_date= NULL

,job_class   = 'DEFAULT_JOB_CLASS'

,job_type= 'PLSQL_BLOCK'

,job_action  = 'begin



dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'');

end;'
  ,comments= ' Algum
comentário sobre a rotina...'
);

END;
/

O GUOB
será no dia 11/08/2012 faça sua inscrição em www.guob.com.br

Atenciosamente,

Rodrigo Mufalani
Oracle Ace Member
http://www.mufalani.com.br

Temos algumas MVs que são atualizadas por Jobs conforme o exemplo abaixo:

begin

sys.dbms_job.submit(job = :job,

what =
'dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'');',

next_date = to_date('19-07-2012 03:00:00', 'dd-mm- hh24:mi:ss'),

interval
= 'trunc(sysdate)+1.125');

commit;

end;

/

Temos migrado nossos
dbmsjobs para Scheduler_Jobs , porem esses referentes a MVs não conseguimos 
fazer funcionar.

É possível colocar a MV para ser atualizada via scheduller Jobs? Se sim, tem 
algum segredo? O que
estamos tentando
fazer é o que segue

begin

sys.dbms_scheduler.create_job(job_name = 'DM_AGRIC.AGR_PRODUCOES_MV',

job_type = 'STORED_PROCEDURE',

job_action
= 'dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'')',

start_date
= to_date('18-07-2012 02:00:00', 'dd-mm- hh24:mi:ss'),

repeat_interval = 'Freq=Daily',

end_date =
to_date(null),

job_class = 'DBMS_JOB$',

enabled = true,

auto_drop
= false,

comments = '');

end;

/

Nosso banco é o 11G las release.

Retorna o erro ORA-27452 , mas garanto que a MV em
questão existe no banco.

[cid:9015F81F-1F1D-49EC-9994-0ACEF7845BA3]
[cid:F6DD4024-FF08-4B1F-9260-E61B8D4F9124]

[As partes desta mensagem que não continham texto
foram removidas]

[As partes desta mensagem que não continham texto foram removidas]





[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Materialized View X Scheduler Job

2012-07-18 Por tôpico Rodrigo Mufalani


Alexandre,

  Só ajusta o horário e a frequencia... que eu peguei uma minha aqui de
exemplo... Ok?

   
   O GUOB  será no dia 11/08/2012 faça a sua
inscrição em www.guob.com.br

Atenciosamente,

Rodrigo Mufalani
Oracle Ace
Member
http://www.mufalani.com.br




Rodrigo

Valeu. Funcionou.
[cid:A613D270-13A6-4E0E-8CBF-B7B47BE01E88]
[cid:29382225-BE9C-4776-92C9-A1EB6BC71C0E]

From: Rodrigo
Mufalani rodr...@mufalani.com.brmailto:rodr...@mufalani.com.br
Reply-To:
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
Date: quarta-feira, 18 de julho
de 2012 15:23
To: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br]
Materialized View X Scheduler Job




Boa tarde,

  Testa assim...

BEGIN
  SYS.DBMS_SCHEDULER.CREATE_JOB
(
   job_name
= 'SYSTEM.NOME_DO_SEU_JOB'

 ,start_date  =
TO_TIMESTAMP_TZ('2012/01/21 20:35:11.00 -02:00','/mm/dd hh24:mi:ss.ff
tzh:tzm')
  ,repeat_interval = 'FREQ=WEEKLY'

,end_date= NULL

,job_class
  = 'DEFAULT_JOB_CLASS'

,job_type= 'PLSQL_BLOCK'

,job_action  =
'begin



dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'');

end;'
  ,comments= ' Algum
comentário sobre a rotina...'
);

END;
/

O GUOB
será no dia 11/08/2012 faça sua
inscrição em www.guob.com.br

Atenciosamente,

Rodrigo Mufalani
Oracle Ace Member
http://www.mufalani.com.br

Temos algumas MVs que são atualizadas por
Jobs conforme o exemplo abaixo:

begin

sys.dbms_job.submit(job = :job,

what
=
'dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'');',

next_date =
to_date('19-07-2012 03:00:00', 'dd-mm- hh24:mi:ss'),

interval
= 'trunc(sysdate)+1.125');

commit;

end;

/

Temos migrado nossos
dbmsjobs para Scheduler_Jobs , porem
esses referentes a MVs não conseguimos fazer funcionar.

Ãpermil; possível
colocar a MV para ser atualizada via scheduller Jobs? Se sim, tem algum 
segredo? O que
estamos tentando
fazer é o que segue

begin

sys.dbms_scheduler.create_job(job_name =
'DM_AGRIC.AGR_PRODUCOES_MV',

job_type = 'STORED_PROCEDURE',

job_action
=
'dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'')',

start_date
= to_date('18-07-2012 02:00:00',
'dd-mm- hh24:mi:ss'),

repeat_interval = 'Freq=Daily',

end_date =
to_date(null),

job_class = 'DBMS_JOB$',

enabled = true,

auto_drop
= false,

comments = '');

end;

/

Nosso banco é o 11G
las release.

Retorna o erro ORA-27452 , mas garanto que a MV em
questão existe no
banco.

[cid:9015F81F-1F1D-49EC-9994-0ACEF7845BA3]
[cid:F6DD4024-FF08-4B1F-9260-E61B8D4F9124]

[As partes desta mensagem que não continham texto
foram removidas]

[As partes desta
mensagem que não continham texto foram removidas]





[As partes desta
mensagem que não continham texto foram removidas]







[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Materialized View X Scheduler Job

2012-07-18 Por tôpico Alexandre Rocha Plácido
Já fiz. obrigado
[cid:CF2D4CAA-1EDE-487F-9BA6-7E1D4E599908]
[cid:AA3281D4-9DF4-449D-96A3-BF0DB384D64B]

From: Rodrigo Mufalani rodr...@mufalani.com.brmailto:rodr...@mufalani.com.br
Reply-To: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
Date: quarta-feira, 18 de julho de 2012 16:00
To: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Materialized View X Scheduler Job




Alexandre,

  Só ajusta o horário e a frequencia... que eu peguei uma minha aqui de
exemplo... Ok?


   O GUOB  será no dia 11/08/2012 faça a sua
inscrição em www.guob.com.br

Atenciosamente,

Rodrigo Mufalani
Oracle Ace
Member
http://www.mufalani.com.br

Rodrigo

Valeu. Funcionou.
[cid:A613D270-13A6-4E0E-8CBF-B7B47BE01E88]
[cid:29382225-BE9C-4776-92C9-A1EB6BC71C0E]

From: Rodrigo
Mufalani 
rodr...@mufalani.com.brmailto:rodrigo%40mufalani.com.brmailto:rodr...@mufalani.com.brmailto:rodrigo%40mufalani.com.br
Reply-To:
oracle_br@yahoogrupos.com.brmailto:oracle_br%40yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.brmailto:oracle_br%40yahoogrupos.com.br
oracle_br@yahoogrupos.com.brmailto:oracle_br%40yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.brmailto:oracle_br%40yahoogrupos.com.br
Date: quarta-feira, 18 de julho
de 2012 15:23
To: 
oracle_br@yahoogrupos.com.brmailto:oracle_br%40yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.brmailto:oracle_br%40yahoogrupos.com.br
oracle_br@yahoogrupos.com.brmailto:oracle_br%40yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.brmailto:oracle_br%40yahoogrupos.com.br
Subject: Re: [oracle_br]
Materialized View X Scheduler Job

Boa tarde,

Testa assim...

BEGIN
SYS.DBMS_SCHEDULER.CREATE_JOB
(
job_name
= 'SYSTEM.NOME_DO_SEU_JOB'

,start_date =
TO_TIMESTAMP_TZ('2012/01/21 20:35:11.00 -02:00','/mm/dd hh24:mi:ss.ff
tzh:tzm')
,repeat_interval = 'FREQ=WEEKLY'

,end_date = NULL

,job_class
= 'DEFAULT_JOB_CLASS'

,job_type = 'PLSQL_BLOCK'

,job_action =
'begin

dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'');

end;'
,comments = ' Algum
comentário sobre a rotina...'
);

END;
/

O GUOB
será no dia 11/08/2012 faça sua
inscrição em www.guob.com.br

Atenciosamente,

Rodrigo Mufalani
Oracle Ace Member
http://www.mufalani.com.br

Temos algumas MVs que são atualizadas por
Jobs conforme o exemplo abaixo:

begin

sys.dbms_job.submit(job = :job,

what
=
'dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'');',

next_date =
to_date('19-07-2012 03:00:00', 'dd-mm- hh24:mi:ss'),

interval
= 'trunc(sysdate)+1.125');

commit;

end;

/

Temos migrado nossos
dbmsjobs para Scheduler_Jobs , porem
esses referentes a MVs não conseguimos fazer funcionar.

Ãpermil; possível
colocar a MV para ser atualizada via scheduller Jobs? Se sim, tem algum 
segredo? O que
estamos tentando
fazer é o que segue

begin

sys.dbms_scheduler.create_job(job_name =
'DM_AGRIC.AGR_PRODUCOES_MV',

job_type = 'STORED_PROCEDURE',

job_action
=
'dbms_refresh.refresh(''DM_AGRIC.AGR_PRODUCOES_MV'')',

start_date
= to_date('18-07-2012 02:00:00',
'dd-mm- hh24:mi:ss'),

repeat_interval = 'Freq=Daily',

end_date =
to_date(null),

job_class = 'DBMS_JOB$',

enabled = true,

auto_drop
= false,

comments = '');

end;

/

Nosso banco é o 11G
las release.

Retorna o erro ORA-27452 , mas garanto que a MV em
questão existe no
banco.

[cid:9015F81F-1F1D-49EC-9994-0ACEF7845BA3]
[cid:F6DD4024-FF08-4B1F-9260-E61B8D4F9124]

[As partes desta mensagem que não continham texto
foram removidas]

[As partes desta
mensagem que não continham texto foram removidas]

[As partes desta
mensagem que não continham texto foram removidas]

[As partes desta mensagem que não continham texto foram removidas]





[As partes desta mensagem que não continham texto foram removidas]



[oracle_br] Materialized View

2010-03-25 Por tôpico Alex Oracle
Olá pessoal,

Algumas pessoas me questionaram a respeito de visão materializada que
permite adicionar/atualizar registro indiferente do lado Master ou Slave.
Eu já trabalhei com a replicação do Master replicar para outro banco via MV,
mas permitir manutenção de registro em ambos os dados, eu desconheço.

Alguém já viu isso com MV??
Se puder compartilhar, agradeço.

Abraço
Alex


[As partes desta mensagem que não continham texto foram removidas]



[oracle_br] Materialized View

2008-06-18 Por tôpico Willian Frasson
Dae pessoal boa tarde, alguém ae já usou uma Materialized View fazendo 
replicação para DOIS SITES diferentes ex:

MASTER- TABELA CLIENTES

SITE1- TABELA CLIENTES
SITE1-TABELA CLIENTES

No caso tenho para uma só, vaso alguém queira pegar a ideia tb ai, em uma mesma 
MLOG irá fazer a replicação? Já que dai penso assim o SITE1 iria pegar os 
dados, e o SITE2 ficaria desatualizado?
Abçs

Segue script
--Criacao dos logs no site master(DESENV):create materialized view log on 
SCOTT.EMP tablespace USERS with primary key;

--Criacao do database link no site snap(BASE):

create database link DESENV connect to SCOTT identified by tiger using 'DESENV';

--Efetua a criação do snapshot no site snap(BASE):

create snapshot SCOTT.EMP_MV tablespace USERS

using index tablespace USERS

refresh complete

with primary key

as select * from [EMAIL PROTECTED];

--Efetuar a criação do job de replicação(BASE):

begin

dbms_refresh.make(name='REFRESH_SCOTT_5M', list='', next_date=SYSDATE, 
interval='sysdate+60/(60*24)', push_deferred_rpc=TRUE, 
refresh_after_errors=TRUE);

end;

--Adicionar os snaps no grupo de replicação(BASE):

begin

dbms_refresh.add(name='REFRESH_SCOTT_5M',list='SCOTT.EMP_MV', lax=TRUE);

end;

--Alter os snaps para refresh fast(BASE):

alter snapshot SCOTT.EMP_MV refresh fast;

--Insert de teste(DESENV)

INSERT INTO EMP(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)

VALUES ('9096','TESTE2','TESTE','9090','10/05/2008','800','800','20');

COMMIT;

--Efetuar um teste de replicação(BASE):

begin

dbms_refresh.refresh('SCOTT.REFRESH_SCOTT_5M');

end;

--Faz Select verificando a replicação(BASE)

SELECT * FROM EMP_MV




[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Materialized View

2008-06-18 Por tôpico Willian Frasson
opss coloquei errado ali embaixo é SITE2:

MASTER- TABELA CLIENTES

SITE1- TABELA CLIENTES
SITE2-TABELA CLIENTES

  - Original Message - 
  From: Willian Frasson 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Wednesday, June 18, 2008 3:39 PM
  Subject: [oracle_br] Materialized View


  Dae pessoal boa tarde, alguém ae já usou uma Materialized View fazendo 
replicação para DOIS SITES diferentes ex:

  MASTER- TABELA CLIENTES

  SITE1- TABELA CLIENTES
  SITE1-TABELA CLIENTES

  No caso tenho para uma só, vaso alguém queira pegar a ideia tb ai, em uma 
mesma MLOG irá fazer a replicação? Já que dai penso assim o SITE1 iria pegar os 
dados, e o SITE2 ficaria desatualizado?
  Abçs

  Segue script
  --Criacao dos logs no site master(DESENV):create materialized view log on 
SCOTT.EMP tablespace USERS with primary key;

  --Criacao do database link no site snap(BASE):

  create database link DESENV connect to SCOTT identified by tiger using 
'DESENV';

  --Efetua a criação do snapshot no site snap(BASE):

  create snapshot SCOTT.EMP_MV tablespace USERS

  using index tablespace USERS

  refresh complete

  with primary key

  as select * from [EMAIL PROTECTED];

  --Efetuar a criação do job de replicação(BASE):

  begin

  dbms_refresh.make(name='REFRESH_SCOTT_5M', list='', next_date=SYSDATE, 
interval='sysdate+60/(60*24)', push_deferred_rpc=TRUE, 
refresh_after_errors=TRUE);

  end;

  --Adicionar os snaps no grupo de replicação(BASE):

  begin

  dbms_refresh.add(name='REFRESH_SCOTT_5M',list='SCOTT.EMP_MV', lax=TRUE);

  end;

  --Alter os snaps para refresh fast(BASE):

  alter snapshot SCOTT.EMP_MV refresh fast;

  --Insert de teste(DESENV)

  INSERT INTO EMP(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)

  VALUES ('9096','TESTE2','TESTE','9090','10/05/2008','800','800','20');

  COMMIT;

  --Efetuar um teste de replicação(BASE):

  begin

  dbms_refresh.refresh('SCOTT.REFRESH_SCOTT_5M');

  end;

  --Faz Select verificando a replicação(BASE)

  SELECT * FROM EMP_MV

  [As partes desta mensagem que não continham texto foram removidas]



   

  __ Informação do NOD32 IMON 3198 (20080618) __

  Esta mensagem foi verificada pelo NOD32 sistema antivírus
  http://www.eset.com.br


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Materialized View

2008-06-18 Por tôpico Willian Frasson
opa consegui aqui, foi só adicionar a MV no SITE2 msmo
abçs

  - Original Message - 
  From: Willian Frasson 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Wednesday, June 18, 2008 3:39 PM
  Subject: [oracle_br] Materialized View


  Dae pessoal boa tarde, alguém ae já usou uma Materialized View fazendo 
replicação para DOIS SITES diferentes ex:

  MASTER- TABELA CLIENTES

  SITE1- TABELA CLIENTES
  SITE1-TABELA CLIENTES

  No caso tenho para uma só, vaso alguém queira pegar a ideia tb ai, em uma 
mesma MLOG irá fazer a replicação? Já que dai penso assim o SITE1 iria pegar os 
dados, e o SITE2 ficaria desatualizado?
  Abçs

  Segue script
  --Criacao dos logs no site master(DESENV):create materialized view log on 
SCOTT.EMP tablespace USERS with primary key;

  --Criacao do database link no site snap(BASE):

  create database link DESENV connect to SCOTT identified by tiger using 
'DESENV';

  --Efetua a criação do snapshot no site snap(BASE):

  create snapshot SCOTT.EMP_MV tablespace USERS

  using index tablespace USERS

  refresh complete

  with primary key

  as select * from [EMAIL PROTECTED];

  --Efetuar a criação do job de replicação(BASE):

  begin

  dbms_refresh.make(name='REFRESH_SCOTT_5M', list='', next_date=SYSDATE, 
interval='sysdate+60/(60*24)', push_deferred_rpc=TRUE, 
refresh_after_errors=TRUE);

  end;

  --Adicionar os snaps no grupo de replicação(BASE):

  begin

  dbms_refresh.add(name='REFRESH_SCOTT_5M',list='SCOTT.EMP_MV', lax=TRUE);

  end;

  --Alter os snaps para refresh fast(BASE):

  alter snapshot SCOTT.EMP_MV refresh fast;

  --Insert de teste(DESENV)

  INSERT INTO EMP(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)

  VALUES ('9096','TESTE2','TESTE','9090','10/05/2008','800','800','20');

  COMMIT;

  --Efetuar um teste de replicação(BASE):

  begin

  dbms_refresh.refresh('SCOTT.REFRESH_SCOTT_5M');

  end;

  --Faz Select verificando a replicação(BASE)

  SELECT * FROM EMP_MV

  [As partes desta mensagem que não continham texto foram removidas]



   

  __ Informação do NOD32 IMON 3198 (20080618) __

  Esta mensagem foi verificada pelo NOD32 sistema antivírus
  http://www.eset.com.br


[As partes desta mensagem que não continham texto foram removidas]



[oracle_br] Materialized view versus Trigger

2008-05-29 Por tôpico zidvlauns
Olá!

Alguém tem alguma documentação sobre o que compensa mais usar para
fazer uma replicação de dados entre esquemas: view materialida ou trigger?

Desde já obg!



[oracle_br] Materialized view gerando archivelog

2007-07-02 Por tôpico wnetto27
Pessoal , estou com um problema com uma view materializada que gera 4 a 
seis archivelogs na hora de sua atualização.A mview foi criada com o 
parametro de nologging , tenho criado varias delas e nenhuma gera tanto 
archive como essa.Segue o código para verificação.

create materialized view MVLTP
refresh force on demand
start with to_date('02-07-2007 11:53:39', 'dd-mm- hh24:mi:ss') next 
sysdate + 30/1440 
as
select distinct ltpcd as mvltpcd ,
ltpprdcd as mvltpprdcd ,
ltplis as mvltplis ,
ltpdtval as mvltpdtval
from tbltp

at 
Wagner



Re: [oracle_br] Materialized view gerando archivelog

2007-07-02 Por tôpico Ricardo Marques Silvério
cade o nologging do código ? 

- Original Message 
From: wnetto27 [EMAIL PROTECTED]
To: oracle_br@yahoogrupos.com.br
Sent: Monday, July 2, 2007 11:40:00 AM
Subject: [oracle_br] Materialized view gerando archivelog

Pessoal , estou com um problema com uma view materializada que gera 4 a 
seis archivelogs na hora de sua atualização.A mview foi criada com o 
parametro de nologging , tenho criado varias delas e nenhuma gera tanto 
archive como essa.Segue o código para verificação.

create materialized view MVLTP
refresh force on demand
start with to_date('02-07-2007 11:53:39', 'dd-mm- hh24:mi:ss') next 
sysdate + 30/1440 
as
select distinct ltpcd as mvltpcd ,
ltpprdcd as mvltpprdcd ,
ltplis as mvltplis ,
ltpdtval as mvltpdtval
from tbltp

at 
Wagner



Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » 
Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php 
--
Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/  

  
Links do Yahoo! Grupos

 





   

Got a little couch potato? 
Check out fun summer activities for kids.
http://search.yahoo.com/search?fr=oni_on_mailp=summer+activities+for+kidscs=bz
 


[oracle_br] Materialized View

2006-09-15 Por tôpico Andre Campos
Boa Tarde Amigos,

Gostaria de saber se tem como fazer refresh online de uma view materializada??

Cada vez que uma tabela recebe uma informação nova o registro é 

atualizado na view materializada amarrada a ela??

Se possivel, alguém poderia me enviar um exemplo disso??

Obrigado...

André Campos


[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

OPORTUNIDADES DE TRABALHO, VAGAS, EMPREGOS PARA PROFISSIONAIS ORACLE VISITE: 
http://www.oraclebr.com.br/
__
Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine  
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





[oracle_br] Materialized View - limitações

2006-09-12 Por tôpico Luciana Camargo
Pessoal,

   Estou precisando unificar vários schemas em apenas um e estou tentando
utilizar a materialized view.
   A regra para montar a consulta só permite que a MV seja COMPLETE. Até ai
tudo bem.
   A principio eu pensei em fazer tudos os schemas com UNION ALL, mas como
existem muitos schemas, a MV dá problema de criação.
   Existe mesmo uma limitação da quantidade de UNION ALL na criação de MV?

   Para tentar contornar, tentei criar várias MVs para depois criar uma
visão convencional unindo essas várias MV, mas dá erro também:

SQL create view vw_teste
  2  (col1,  col2,  col3)
  3  as
  4  select col1,  col2,  col3 from MV_TESTE_A
  5  union all
  6  select col1,  col2,  col3 from MV_TESTE_B;

e dá o erro:
 select col1,  col2,  col3 from MV_TESTE_B;
  *
ERROR at line 6:
ORA-00955: name is already used by an existing object


   Alguém teria uma idéia de como resolver?
   Preciso de uma visão única (no final) que consiga fazer UNION ALL (de 1
em 1 hora) para 120 schemas.

   Obrigada
   Luciana


[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

OPORTUNIDADES DE TRABALHO, VAGAS, EMPREGOS PARA PROFISSIONAIS ORACLE VISITE: 
http://www.oraclebr.com.br/
__
Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine  
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [oracle_br] Materialized View - limitaçõe s

2006-09-12 Por tôpico rflribeiro
Sem querer chover no molhado, você já tentou outro nome p/ a view além 
de vw_teste? O erro é bem claro: ORA-00955: name is already used by an 
existing object.

Reginaldo Ribeiro - DBA Oracle
http://www.dbcom.com.br

[EMAIL PROTECTED]
skype: dbcom_it_experts
55 11 92344290



Luciana Camargo wrote:
 Pessoal,

Estou precisando unificar vários schemas em apenas um e estou tentando
 utilizar a materialized view.
A regra para montar a consulta só permite que a MV seja COMPLETE. 
 Até ai
 tudo bem.
A principio eu pensei em fazer tudos os schemas com UNION ALL, 
 mas como
 existem muitos schemas, a MV dá problema de criação.
Existe mesmo uma limitação da quantidade de UNION ALL na criação 
 de MV?

Para tentar contornar, tentei criar várias MVs para depois criar uma
 visão convencional unindo essas várias MV, mas dá erro também:

 SQL create view vw_teste
   2  (col1,  col2,  col3)
   3  as
   4  select col1,  col2,  col3 from MV_TESTE_A
   5  union all
   6  select col1,  col2,  col3 from MV_TESTE_B;

 e dá o erro:
  select col1,  col2,  col3 from MV_TESTE_B;
   *
 ERROR at line 6:
 ORA-00955: name is already used by an existing object


Alguém teria uma idéia de como resolver?
Preciso de uma visão única (no final) que consiga fazer UNION ALL (de 1
 em 1 hora) para 120 schemas.

Obrigada
Luciana


--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

OPORTUNIDADES DE TRABALHO, VAGAS, EMPREGOS PARA PROFISSIONAIS ORACLE VISITE: 
http://www.oraclebr.com.br/
__
Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine  
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [oracle_br] Materialized View - limitações

2006-09-12 Por tôpico Luciana Camargo
Olá Reginaldo,

   Já verifiquei unicidade de nome sim e o erro continua o mesmo :-)

Luciana


Em 12/09/06, rflribeiro [EMAIL PROTECTED] escreveu:

 Sem querer chover no molhado, você já tentou outro nome p/ a view além
 de vw_teste? O erro é bem claro: ORA-00955: name is already used by an
 existing object.

 Reginaldo Ribeiro - DBA Oracle
 http://www.dbcom.com.br

 [EMAIL PROTECTED]
 skype: dbcom_it_experts
 55 11 92344290



 Luciana Camargo wrote:
  Pessoal,
 
 Estou precisando unificar vários schemas em apenas um e estou
 tentando
  utilizar a materialized view.
 A regra para montar a consulta só permite que a MV seja COMPLETE.
  Até ai
  tudo bem.
 A principio eu pensei em fazer tudos os schemas com UNION ALL,
  mas como
  existem muitos schemas, a MV dá problema de criação.
 Existe mesmo uma limitação da quantidade de UNION ALL na criação
  de MV?
 
 Para tentar contornar, tentei criar várias MVs para depois criar uma
  visão convencional unindo essas várias MV, mas dá erro também:
 
  SQL create view vw_teste
2  (col1,  col2,  col3)
3  as
4  select col1,  col2,  col3 from MV_TESTE_A
5  union all
6  select col1,  col2,  col3 from MV_TESTE_B;
 
  e dá o erro:
   select col1,  col2,  col3 from MV_TESTE_B;
*
  ERROR at line 6:
  ORA-00955: name is already used by an existing object
 
 
 Alguém teria uma idéia de como resolver?
 Preciso de uma visão única (no final) que consiga fazer UNION ALL (de
 1
  em 1 hora) para 120 schemas.
 
 Obrigada
 Luciana
 



[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

OPORTUNIDADES DE TRABALHO, VAGAS, EMPREGOS PARA PROFISSIONAIS ORACLE VISITE: 
http://www.oraclebr.com.br/
__
Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine  
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




[oracle_br] MATERIALIZED VIEW

2006-07-18 Por tôpico DBA - ORACLE
 Pessoal alguém já teve este problema:?

Ao tentar criar a view retorna erro devido ao dblink mas dou um select *
from [EMAIL PROTECTED] e retorna normalmente. Já conferi todos
dblinks e estão ok. Tnsnames e estão ok. E a prova que está conectando é o *
from que faço

SQL CREATE MATERIALIZED VIEW TMI.CFG_APLICATIVOS
  2  REFRESH FAST ON DEMAND
  3  WITH ROWID
  4   NEXT NULL
  5  AS
  6  SELECT
  7  CAPL.CODIGO CODIGO,
  8  CAPL.TIPO TIPO,
  9  CAPL.INDIC_OBJETO_VARIAVEL INDIC_OBJETO_VARIAVEL,
 10  CAPL.COMANDO COMANDO,
 11  CAPL.PARM_CODIGO PARM_CODIGO,
 12  CAPL.PARM_SIST_SIGLA PARM_SIST_SIGLA
 13  FROM [EMAIL PROTECTED] CAPL;
FROM [EMAIL PROTECTED] CAPL
 *
ERRO na linha 13:
ORA-04052: error occurred when looking up remote object
[EMAIL PROTECTED]
ORA-00604: error occurred at recursive SQL level 1
ORA-12154: TNS:could not resolve service name


[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




[oracle_br] Materialized View

2006-07-03 Por tôpico Demitre Col
Boa tarde.


Há um certo tempo, postei uma questão que foi respondida. Agora, continuando em 
testes nas MVs, deparei com a seguinte situação:
Criei uma MV usando a cláusula REFRESH FAST ON COMMIT porém, ao comitar 
dados em uma das tabelas usadas pela MV, não vejo os dados nela, exceto se eu 
mandar atualizar os dados.

Se puderem me indicar o que estou fazendo de errado, agradeço. Banco 9.2.0.4

Segue abaixo script

drop materialized view log on tabela1 
/

create materialized view log on tabela1 
with rowid 
( nulote, cdmovto, cdpro, dtmovto, cdccu, nuarmaz, qtmovto )
including new values
/

drop materialized view log on tabela2 
/

create materialized view log on tabela2 
with rowid (cdmovto, idoper )
including new values
/

drop materialized view mv1
/

create materialized view mv1
refresh fast on commit
with primary key 
as
select tabela1.cdpro, tabela1.nuarmaz, tabela1.cdccu, 
to_char(tabela1.dtmovto,'mm') as dtam, 
   sum(decode(tabela2.idoper,'+',1,'-', -1)*tabela1.qtmovto) as saldo
from tabela1, tabela2
where tabela1.cdmovto = tabela2.cdmovto
group by tabela1.cdpro, tabela1.nuarmaz, tabela1.cdccu, 
to_char(tabela1.dtmovto,'mm')
/

drop materialized view mv2
/

create materialized view mv2
refresh fast on commit
with primary key 
as
select cdpro, nuarmaz, nulote, sum(decode(tabela2.idoper,'+',1,'-', 
-1)*qtmovto) as saldo
from tabela1, tabela2
where tabela1.cdmovto = tabela2.cdmovto
and tabela1.nulote is not null
group by cdpro, nuarmaz, nulote
/

begin
  dbms_mview.refresh(
list = 'dono.mv1',
method = '?' 
  );

  dbms_mview.refresh(
list = 'dono.mv2',
method = '?' 
  );

end;
/


-
 Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. 
Registre seu aparelho agora!

[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [oracle_br] Materialized View

2006-07-03 Por tôpico Wellerson Leite de Araújo
Jovem,

Se a sua materialized view possuir uma função de grupo no SELECT, o que é o 
caso, vc não conseguirá fazer um REFRESH FAST.

Abraços,

Wellerson

Demitre Col [EMAIL PROTECTED] escreveu:Boa tarde.
 
 
 Há um certo tempo, postei uma questão que foi respondida. Agora, continuando 
em testes nas MVs, deparei com a seguinte situação:
 Criei uma MV usando a cláusula REFRESH FAST ON COMMIT porém, ao comitar 
dados em uma das tabelas usadas pela MV, não vejo os dados nela, exceto se eu 
mandar atualizar os dados.
 
 Se puderem me indicar o que estou fazendo de errado, agradeço. Banco 9.2.0.4
 
 Segue abaixo script
 
 drop materialized view log on tabela1 
 /
 
 create materialized view log on tabela1 
 with rowid 
 ( nulote, cdmovto, cdpro, dtmovto, cdccu, nuarmaz, qtmovto )
 including new values
 /
 
 drop materialized view log on tabela2 
 /
 
 create materialized view log on tabela2 
 with rowid (cdmovto, idoper )
 including new values
 /
 
 drop materialized view mv1
 /
 
 create materialized view mv1
 refresh fast on commit
 with primary key 
 as
 select tabela1.cdpro, tabela1.nuarmaz, tabela1.cdccu, 
to_char(tabela1.dtmovto,'mm') as dtam, 
sum(decode(tabela2.idoper,'+',1,'-', -1)*tabela1.qtmovto) as saldo
 from tabela1, tabela2
 where tabela1.cdmovto = tabela2.cdmovto
 group by tabela1.cdpro, tabela1.nuarmaz, tabela1.cdccu, 
to_char(tabela1.dtmovto,'mm')
 /
 
 drop materialized view mv2
 /
 
 create materialized view mv2
 refresh fast on commit
 with primary key 
 as
 select cdpro, nuarmaz, nulote, sum(decode(tabela2.idoper,'+',1,'-', 
-1)*qtmovto) as saldo
 from tabela1, tabela2
 where tabela1.cdmovto = tabela2.cdmovto
 and tabela1.nulote is not null
 group by cdpro, nuarmaz, nulote
 /
 
 begin
   dbms_mview.refresh(
 list = 'dono.mv1',
 method = '?' 
   );
 
   dbms_mview.refresh(
 list = 'dono.mv2',
 method = '?' 
   );
 
 end;
 /
 
  
 -
  Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. 
Registre seu aparelho agora!
 
 [As partes desta mensagem que não continham texto foram removidas]
 
   


Não vou deixar me embrutecer, eu acredito nos meus ideais. Podem até maltratar 
o meu coração, que meu espírito ninguém vai conseguir quebrar...
(Legião Urbana)

As idéias estão no chão, você tropeça e acha a solução...
(Titãs)

-
 Yahoo! Search
 Música para ver e ouvir: You're Beautiful, do James Blunt

[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




[oracle_br] Materialized View

2006-06-07 Por tôpico Demitre Col
Bom dia.

Por definição do sistema da empresa onde trabalho, uma determinada tabela de 
movimentação atualiza outra tabela de saldos via trigger.
Visando melhorar isto, pensei em implementar uma Materialized View que desse a 
mesma visão da tabela de saldos, porém de modo mais fácil e automático. Criei 
uma MV log para a de saldos, e uma que mostre os dados que eu quero. Feito 
isto, não localizei em tutoriais um modo da segunda ser atualizada 
automaticamente. Isto não seria o problema, o caso é que, com mais de 1.000.000 
de registros, ela demora +- 20s para se atualizar. Eu gostaria que fosse mais 
rápido.

Gostaria da sugestão dos colegas quanto à esta modificação.

Att

 __
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 

[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [oracle_br] Materialized View

2006-06-07 Por tôpico Wellerson Leite de Araújo
Jovem,

Esta sua atulização deve ser feita de maneira sincrona, certo?
Bem... Vc deve criar a sua materialized view da seguinte forma:
CREATE MATERIALIZED VIEW nome 
REFRESH FAST ON COMMIT
AS
select ...

Na tabela de origem, ou tabelas de origens deve ser criada um log de 
materialized view. Se vc quiser que ela seja utilizada para QUERY REWRITE basta 
de acrescentar esta clausula antes do AS. Neste exemplo a sua materialized view 
será atulizada toda vez que uma transação nas tabelas base for confirmada 
(commit).  Como todo commit fará com que a sua MV seja atualizada, cada 
atualização ficará mais rápida. Caso isso ainda não tenha o desempenho que vc 
deseja vc poderá acrescentar a cláusula de PARALLEL (DEGREE DEFAULT) ou 
PARALLEL (DEGREE número de processos em paralelo) antes do AS. Lembrando que 
a sua sessão deve aceitar DML em paralelo: ALTER SESSION ENABLE PARALLEL DML;


Abraços,

Wellerson


Demitre Col [EMAIL PROTECTED] escreveu:Bom dia.
 
 Por definição do sistema da empresa onde trabalho, uma determinada tabela de 
movimentação atualiza outra tabela de saldos via trigger.
 Visando melhorar isto, pensei em implementar uma Materialized View que desse a 
mesma visão da tabela de saldos, porém de modo mais fácil e automático. Criei 
uma MV log para a de saldos, e uma que mostre os dados que eu quero. Feito 
isto, não localizei em tutoriais um modo da segunda ser atualizada 
automaticamente. Isto não seria o problema, o caso é que, com mais de 1.000.000 
de registros, ela demora +- 20s para se atualizar. Eu gostaria que fosse mais 
rápido.
 
 Gostaria da sugestão dos colegas quanto à esta modificação.
 
 Att
 
  __
 Fale com seus amigos  de graça com o novo Yahoo! Messenger 
 http://br.messenger.yahoo.com/ 
 
 [As partes desta mensagem que não continham texto foram removidas]
 
   


Não vou deixar me embrutecer, eu acredito nos meus ideais. Podem até maltratar 
o meu coração, que meu espírito ninguém vai conseguir quebrar...
(Legião Urbana)

As idéias estão no chão, você tropeça e acha a solução...
(Titãs)
 __
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 

[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [oracle_br] Materialized View

2006-06-07 Por tôpico Demitre Col
Olá.

Agradeço pela colaboração. Teoricamente, esta MV não deveria ter os dados 
atualizados após o commit?

Fiz o seguinte teste:
 - Criei com a cláusula REFRESH FAST ON COMMIT
 - Atualizei um dado que constitui na MV 
 - Comitei
 - Consultei os dados da View. Estavam iguais ao momento anterior ao update. 
Porém, com o dbm_mview.refres(...), os dados foram atualizados. 

Aonde eu posso mais procurar o que esteja causando algum problema para a não 
atualização da MV no momento do commit??

Att

Wellerson Leite de Araújo [EMAIL PROTECTED] escreveu:Jovem,
 
 Esta sua atulização deve ser feita de maneira sincrona, certo?
 Bem... Vc deve criar a sua materialized view da seguinte forma:
 CREATE MATERIALIZED VIEW nome 
 REFRESH FAST ON COMMIT
 AS
 select ...
 
 Na tabela de origem, ou tabelas de origens deve ser criada um log de 
materialized view. Se vc quiser que ela seja utilizada para QUERY REWRITE basta 
de acrescentar esta clausula antes do AS. Neste exemplo a sua materialized view 
será atulizada toda vez que uma transação nas tabelas base for confirmada 
(commit).  Como todo commit fará com que a sua MV seja atualizada, cada 
atualização ficará mais rápida. Caso isso ainda não tenha o desempenho que vc 
deseja vc poderá acrescentar a cláusula de PARALLEL (DEGREE DEFAULT) ou 
PARALLEL (DEGREE número de processos em paralelo) antes do AS. Lembrando que 
a sua sessão deve aceitar DML em paralelo: ALTER SESSION ENABLE PARALLEL DML;
 
 
 Abraços,
 
 Wellerson
 
 
 Demitre Col [EMAIL PROTECTED] escreveu:Bom dia.
  
  Por definição do sistema da empresa onde trabalho, uma determinada tabela de 
movimentação atualiza outra tabela de saldos via trigger.
  Visando melhorar isto, pensei em implementar uma Materialized View que desse 
a mesma visão da tabela de saldos, porém de modo mais fácil e automático. Criei 
uma MV log para a de saldos, e uma que mostre os dados que eu quero. Feito 
isto, não localizei em tutoriais um modo da segunda ser atualizada 
automaticamente. Isto não seria o problema, o caso é que, com mais de 1.000.000 
de registros, ela demora +- 20s para se atualizar. Eu gostaria que fosse mais 
rápido.
  
  Gostaria da sugestão dos colegas quanto à esta modificação.
  
  Att
  
   __
  Fale com seus amigos  de graça com o novo Yahoo! Messenger 
  http://br.messenger.yahoo.com/ 
  
  [As partes desta mensagem que não continham texto foram removidas]
  

 
 
 Não vou deixar me embrutecer, eu acredito nos meus ideais. Podem até 
maltratar o meu coração, que meu espírito ninguém vai conseguir quebrar...
 (Legião Urbana)
 
 As idéias estão no chão, você tropeça e acha a solução...
 (Titãs)
  __
 Fale com seus amigos  de graça com o novo Yahoo! Messenger 
 http://br.messenger.yahoo.com/ 
 
 [As partes desta mensagem que não continham texto foram removidas]
 
   

 __
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 

[As partes desta mensagem que não continham texto foram removidas]



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




[oracle_br] Materialized View

2006-04-06 Por tôpico Sergio Leandro Ghellere
Pessoal, to com um probleminha...
Na hora da criação de uma view materializada estou tendo aquela mensagem 
cansativa 
até de ler:

ORA-12015: cannot create a fast refresh materialized view from a complex query

é assim:


CREATE MATERIALIZED VIEW LOG ON ceq_ficha_custo_medio
WITH ROWID, PRIMARY KEY
(IDF_POSICAO_ESTOQUE, DTA_LANCAMENTO)
INCLUDING NEW VALUES
/


CREATE MATERIALIZED VIEW CEQ_VW_CUSTO_MEDIO
BUILD IMMEDIATE
REFRESH FAST ON COMMIT
AS
SELECT IDF_POSICAO_ESTOQUE,
   MAX(DTA_LANCAMENTO) AS DTA_LANCAMENTO
  FROM CEQ_FICHA_CUSTO_MEDIO
 GROUP BY IDF_POSICAO_ESTOQUE
/


alguém pode me ajudar
já procurei em vários lugares (google é amigo, mas google não soube responder..)


Abraço a todos
Leandro

 Webmail - http://www.ondarpc.com.br/

--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Materialized View ????

2005-07-17 Por tôpico Rogerio Ribeiro
Boa noite Welvis!
Use a package DBMS_MVIEW
 
Ex: DBMS_MVIEW.REFRESH('NOME_VIEW');

Welvis Douglas Silva Moreto [EMAIL PROTECTED] escreveu:
Estou criando uma view Materialized View

e no select contem varias tabelas com join como que
faço pra dar um refresh na view quando ha alteração em
qualquer uma da tabelas.


Obrigado


Welvis Douglas

__
Converse com seus amigos em tempo real com o Yahoo! Messenger 
http://br.download.yahoo.com/messenger/ 


__

Pesquisar Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Moderadores da lista:Dorian Anderson Soutto [EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
__
http://br.groups.yahoo.com/group/oracle_br/ 
__ 



-
Links do Yahoo! Grupos

   Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/
  
   Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
  
   O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do 
Yahoo!. 


__
Converse com seus amigos em tempo real com o Yahoo! Messenger 
http://br.download.yahoo.com/messenger/ 

[As partes desta mensagem que não continham texto foram removidas]





__

Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Falar com os Moderadores:([EMAIL PROTECTED])
Dorian Anderson Soutto - Fernanda Damous - Alisson Aguiar 
__ 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Materialized View ????

2005-07-17 Por tôpico Rogerio Ribeiro

Seguinte Jonathan,

a view materializada com atualização on commit só pode ser criada com uma única 
tabela. Alem disso deve ser criado um log de view materializada para a tabela 
em questão.

Atenciosamente,
Rogério Nascimento

Jonathan Barbosa [EMAIL PROTECTED] escreveu:
Olha que interessante!! Alguém poderia me explicar as regras usadas pelo 
Oracle nas views materializadas ON COMMIT?

SQL CREATE MATERIALIZED VIEW TESTE2
  2  refresh complete on commit
  3AS
  4  select last_name from employees;
select last_name from employees
  *
ERROR at line 4:
ORA-12054: cannot set the ON COMMIT refresh attribute for the materialized 
view

SQL  CREATE MATERIALIZED VIEW TESTE2
  2   refresh complete on commit
  3 AS
  4   select e.last_name from employees e,departments d;

Materialized view created.



- Original Message - 
From: Jonathan Barbosa [EMAIL PROTECTED]
To: oracle_br@yahoogrupos.com.br
Sent: Friday, July 15, 2005 4:52 PM
Subject: Re: [oracle_br] Materialized View 


 Não sei porque o Oracle não está permitindo a criação desta view
 materializada, talvez seja devido ao número de tabelas ou outra coisa que
 não saberia te explicar. Podes usar a opção ON DEMAND ou START WITH e NEXT
 para especificar um tempo de atualização.
 Agora,  esta consulta retorna um número enorme de dados como em data
 warehouses? Pelo número de tabelas especificadas a opção on COMMIT poderá
 até trazer problemas de performance se alguma das tabelas mencionadas é
 acessada com uma certa frequência. Estes dados serão requeridos com que
 frequência?As tabelas bases são atualizadas de quanto em quanto tempo?


 Jonathan



 - Original Message - 
 From: Welvis Douglas Silva Moreto [EMAIL PROTECTED]
 To: oracle_br@yahoogrupos.com.br
 Sent: Friday, July 15, 2005 1:54 PM
 Subject: Re: [oracle_br] Materialized View 




 ELE DA UM O SEGUINTE ERRO QUANDO USO ESSA OPÇÃO.

 ORA-12054: cannot set the ON COMMIT refresh attribute
 for the materialized view

 ESSE É O SELECT QUE ESTOU USANSDO

 SELECT PROD_ORIG.ID_PRODUTO ID_PRODUTOORIG,

 DECODE(PCON.ID_PRODUTODESTINO,NULL,PROD_ORIG.ID_PRODUTO,PCON.ID_PRODUTODESTINO)
 ID_PRODUTODEST,

 DECODE(PCON.ID_PRODUTODESTINO,NULL,1,PCON.PC_CONVERSAO)
PC_CONVERSAO,
   PROD.ID_CATEGORIACOML,
   PROD.ID_GRUPOPRODTRIB,
   PROD.ID_PRODUTOFAMILIA,
   PROD.ID_CLASSETRANSPORTE,
   PROD.ID_PRODUTOPESO,
   PROD.ID_CLASSEPRODPCP,
   PROD.ID_PRODUTO_NCM,
   PROD.ID_CLASSESEGURO,
   PROD.ID_GRUPOCONTPROD,
   PROD.ID_PRODUTOAFV,
   PROD.ID_UNIDADE,
   PROD.DS_PRODUTO,
   PROD.PS_KGS_LIQ,
   PROD.VOLUME_M3,
   PROD.BO_GENERICO,
   PROD.NR_UNIDADES,
   PROD.PS_KGS_BRUTO,
   PROD.CD_PESQAUXILIAR,
   PROD.QT_PRODUTO_PALLET,
   PROD.TP_ORIGEM_MERCADORIA,
   PROD.DH_CADASTRO,
   PROD.BO_ATIVO,
   PROD.CD_DATAFLEX,
   PROD.DH_ULT_ALTER,
   PROD.CM_COMPRIMENTO,
   PROD.QT_VOLUMES,
   PROD.CM_LARGURA,
   PROD.CM_ALTURA,
   PROD.TP_PRODUTO,
   UNID.ABREVIATURA,
   UNID.DS_UNIDADE,
   CATG.DS_CATEGORIACOML,
   TPPR.ID_TIPOPRODUTO,
   TPPR.DS_TIPOPRODUTO
 FROM  PRODUTO  PROD,
   PRODUTO  PROD_ORIG,
   PRODUTOCONVERSAO PCON,
   UNIDADE  UNID,
   CATEGORIACOMLCATG,
   TIPOPRODUTO  TPPR
 WHERE PROD.ID_PRODUTO   =
 DECODE(PCON.ID_PRODUTODESTINO,NULL,PROD_ORIG.ID_PRODUTO,PCON.ID_PRODUTODESTINO)
 AND   PROD_ORIG.ID_PRODUTO  =
 PCON.ID_PRODUTOORIGEM(+)
 AND   PCON.BO_PADRAO_REL(+) = 'S'
 AND   UNID.ID_UNIDADE   = PROD.ID_UNIDADE
 AND   CATG.ID_CATEGORIACOML =  PROD.ID_CATEGORIACOML
 AND   TPPR.ID_TIPOPRODUTO   = CATG.ID_TIPOPRODUTO
 /

 --- Jonathan Barbosa [EMAIL PROTECTED] escreveu:


 -
 Use a opção ON COMMIT

 CREATE MATERIALIZED VIEW teste
 REFRESH FAST ON COMMIT
  .
   .
.


 Jonathan


 - Original Message - 
 From: Welvis Douglas Silva Moreto
 [EMAIL PROTECTED]
 To: oracle_br@yahoogrupos.com.br
 Sent: Friday, July 15, 2005 12:06 PM
 Subject: [oracle_br] Materialized View 


 Estou criando uma view Materialized View

 e no select contem varias tabelas com join como que
 faço pra dar um refresh na view quando ha alteração
 em
 qualquer uma da tabelas.


 Obrigado


 Welvis Douglas

 __
 Converse com seus amigos em tempo real com o Yahoo!
 Messenger
 http://br.download.yahoo.com/messenger/



 __

 Pesquisar Histórico:

 http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
 Moderadores da lista:Dorian Anderson Soutto
 [EMAIL PROTECTED]
 Fernanda Damous [EMAIL PROTECTED]
 Alisson Aguiar [EMAIL PROTECTED]

 __
 http://br.groups.yahoo.com/group/oracle_br

[oracle_br] Materialized View ????

2005-07-15 Por tôpico Welvis Douglas Silva Moreto
Estou criando uma view Materialized View

 e no select contem varias tabelas com join como que
faço pra dar um refresh na view quando ha alteração em
qualquer uma da tabelas.


 Obrigado


 Welvis Douglas

__
Converse com seus amigos em tempo real com o Yahoo! Messenger 
http://br.download.yahoo.com/messenger/ 


__

Pesquisar Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Moderadores da lista:Dorian Anderson Soutto [EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
__
http://br.groups.yahoo.com/group/oracle_br/ 
__ 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Materialized View ????

2005-07-15 Por tôpico Welvis Douglas Silva Moreto


ELE DA UM O SEGUINTE ERRO QUANDO USO ESSA OPÇÃO.

ORA-12054: cannot set the ON COMMIT refresh attribute
for the materialized view

ESSE É O SELECT QUE ESTOU USANSDO

SELECT PROD_ORIG.ID_PRODUTO ID_PRODUTOORIG,
  
DECODE(PCON.ID_PRODUTODESTINO,NULL,PROD_ORIG.ID_PRODUTO,PCON.ID_PRODUTODESTINO)
ID_PRODUTODEST,
  
DECODE(PCON.ID_PRODUTODESTINO,NULL,1,PCON.PC_CONVERSAO)
PC_CONVERSAO,
   PROD.ID_CATEGORIACOML,
   PROD.ID_GRUPOPRODTRIB,
   PROD.ID_PRODUTOFAMILIA,
   PROD.ID_CLASSETRANSPORTE,
   PROD.ID_PRODUTOPESO,
   PROD.ID_CLASSEPRODPCP,
   PROD.ID_PRODUTO_NCM,
   PROD.ID_CLASSESEGURO,
   PROD.ID_GRUPOCONTPROD,
   PROD.ID_PRODUTOAFV,
   PROD.ID_UNIDADE,
   PROD.DS_PRODUTO,
   PROD.PS_KGS_LIQ,
   PROD.VOLUME_M3,
   PROD.BO_GENERICO,
   PROD.NR_UNIDADES,
   PROD.PS_KGS_BRUTO,
   PROD.CD_PESQAUXILIAR,
   PROD.QT_PRODUTO_PALLET,
   PROD.TP_ORIGEM_MERCADORIA,
   PROD.DH_CADASTRO,
   PROD.BO_ATIVO,
   PROD.CD_DATAFLEX,
   PROD.DH_ULT_ALTER,
   PROD.CM_COMPRIMENTO,
   PROD.QT_VOLUMES,
   PROD.CM_LARGURA,
   PROD.CM_ALTURA,
   PROD.TP_PRODUTO,
   UNID.ABREVIATURA,
   UNID.DS_UNIDADE,
   CATG.DS_CATEGORIACOML,
   TPPR.ID_TIPOPRODUTO,
   TPPR.DS_TIPOPRODUTO
 FROM  PRODUTO  PROD,
   PRODUTO  PROD_ORIG,
   PRODUTOCONVERSAO PCON,
   UNIDADE  UNID,
   CATEGORIACOMLCATG,
   TIPOPRODUTO  TPPR
 WHERE PROD.ID_PRODUTO   = 
DECODE(PCON.ID_PRODUTODESTINO,NULL,PROD_ORIG.ID_PRODUTO,PCON.ID_PRODUTODESTINO)
 AND   PROD_ORIG.ID_PRODUTO  = 
PCON.ID_PRODUTOORIGEM(+)
 AND   PCON.BO_PADRAO_REL(+) = 'S'
 AND   UNID.ID_UNIDADE   = PROD.ID_UNIDADE
 AND   CATG.ID_CATEGORIACOML =  PROD.ID_CATEGORIACOML
 AND   TPPR.ID_TIPOPRODUTO   = CATG.ID_TIPOPRODUTO
/

--- Jonathan Barbosa [EMAIL PROTECTED] escreveu:


-
Use a opção ON COMMIT

CREATE MATERIALIZED VIEW teste
REFRESH FAST ON COMMIT
  .
   .
.


Jonathan


- Original Message - 
From: Welvis Douglas Silva Moreto
[EMAIL PROTECTED]
To: oracle_br@yahoogrupos.com.br
Sent: Friday, July 15, 2005 12:06 PM
Subject: [oracle_br] Materialized View 


 Estou criando uma view Materialized View

 e no select contem varias tabelas com join como que
 faço pra dar um refresh na view quando ha alteração
em
 qualquer uma da tabelas.


 Obrigado


 Welvis Douglas

 __
 Converse com seus amigos em tempo real com o Yahoo!
Messenger
 http://br.download.yahoo.com/messenger/



__

 Pesquisar Histórico: 

http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
 Moderadores da lista:Dorian Anderson Soutto
[EMAIL PROTECTED]
 Fernanda Damous [EMAIL PROTECTED]
 Alisson Aguiar [EMAIL PROTECTED]

__
 http://br.groups.yahoo.com/group/oracle_br/

__
 Links do Yahoo! Grupos







 




__

Pesquisar Histórico:
http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Moderadores da lista:Dorian Anderson Soutto
[EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
__
http://br.groups.yahoo.com/group/oracle_br/ 
__


  
-
Links do Yahoo! Grupos

   Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/
 
   Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
 
   O uso que você faz do Yahoo! Grupos está sujeito
aos Termos do Serviço do Yahoo!.







___ 
Yahoo! Acesso Grátis - Internet rápida e grátis. 
Instale o discador agora! http://br.acesso.yahoo.com/


__

Pesquisar Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
Moderadores da lista:Dorian Anderson Soutto [EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
__
http://br.groups.yahoo.com/group/oracle_br/ 
__ 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [oracle_br] Materialized View ????

2005-07-15 Por tôpico Jonathan Barbosa
Não sei porque o Oracle não está permitindo a criação desta view 
materializada, talvez seja devido ao número de tabelas ou outra coisa que 
não saberia te explicar. Podes usar a opção ON DEMAND ou START WITH e NEXT 
para especificar um tempo de atualização.
Agora,  esta consulta retorna um número enorme de dados como em data 
warehouses? Pelo número de tabelas especificadas a opção on COMMIT poderá 
até trazer problemas de performance se alguma das tabelas mencionadas é 
acessada com uma certa frequência. Estes dados serão requeridos com que 
frequência?As tabelas bases são atualizadas de quanto em quanto tempo?


Jonathan



- Original Message - 
From: Welvis Douglas Silva Moreto [EMAIL PROTECTED]
To: oracle_br@yahoogrupos.com.br
Sent: Friday, July 15, 2005 1:54 PM
Subject: Re: [oracle_br] Materialized View 




 ELE DA UM O SEGUINTE ERRO QUANDO USO ESSA OPÇÃO.

 ORA-12054: cannot set the ON COMMIT refresh attribute
 for the materialized view

 ESSE É O SELECT QUE ESTOU USANSDO

 SELECT PROD_ORIG.ID_PRODUTO ID_PRODUTOORIG,

 DECODE(PCON.ID_PRODUTODESTINO,NULL,PROD_ORIG.ID_PRODUTO,PCON.ID_PRODUTODESTINO)
 ID_PRODUTODEST,

 DECODE(PCON.ID_PRODUTODESTINO,NULL,1,PCON.PC_CONVERSAO)
PC_CONVERSAO,
   PROD.ID_CATEGORIACOML,
   PROD.ID_GRUPOPRODTRIB,
   PROD.ID_PRODUTOFAMILIA,
   PROD.ID_CLASSETRANSPORTE,
   PROD.ID_PRODUTOPESO,
   PROD.ID_CLASSEPRODPCP,
   PROD.ID_PRODUTO_NCM,
   PROD.ID_CLASSESEGURO,
   PROD.ID_GRUPOCONTPROD,
   PROD.ID_PRODUTOAFV,
   PROD.ID_UNIDADE,
   PROD.DS_PRODUTO,
   PROD.PS_KGS_LIQ,
   PROD.VOLUME_M3,
   PROD.BO_GENERICO,
   PROD.NR_UNIDADES,
   PROD.PS_KGS_BRUTO,
   PROD.CD_PESQAUXILIAR,
   PROD.QT_PRODUTO_PALLET,
   PROD.TP_ORIGEM_MERCADORIA,
   PROD.DH_CADASTRO,
   PROD.BO_ATIVO,
   PROD.CD_DATAFLEX,
   PROD.DH_ULT_ALTER,
   PROD.CM_COMPRIMENTO,
   PROD.QT_VOLUMES,
   PROD.CM_LARGURA,
   PROD.CM_ALTURA,
   PROD.TP_PRODUTO,
   UNID.ABREVIATURA,
   UNID.DS_UNIDADE,
   CATG.DS_CATEGORIACOML,
   TPPR.ID_TIPOPRODUTO,
   TPPR.DS_TIPOPRODUTO
 FROM  PRODUTO  PROD,
   PRODUTO  PROD_ORIG,
   PRODUTOCONVERSAO PCON,
   UNIDADE  UNID,
   CATEGORIACOMLCATG,
   TIPOPRODUTO  TPPR
 WHERE PROD.ID_PRODUTO   =
 DECODE(PCON.ID_PRODUTODESTINO,NULL,PROD_ORIG.ID_PRODUTO,PCON.ID_PRODUTODESTINO)
 AND   PROD_ORIG.ID_PRODUTO  =
 PCON.ID_PRODUTOORIGEM(+)
 AND   PCON.BO_PADRAO_REL(+) = 'S'
 AND   UNID.ID_UNIDADE   = PROD.ID_UNIDADE
 AND   CATG.ID_CATEGORIACOML =  PROD.ID_CATEGORIACOML
 AND   TPPR.ID_TIPOPRODUTO   = CATG.ID_TIPOPRODUTO
 /

 --- Jonathan Barbosa [EMAIL PROTECTED] escreveu:


 -
 Use a opção ON COMMIT

 CREATE MATERIALIZED VIEW teste
 REFRESH FAST ON COMMIT
  .
   .
.


 Jonathan


 - Original Message - 
 From: Welvis Douglas Silva Moreto
 [EMAIL PROTECTED]
 To: oracle_br@yahoogrupos.com.br
 Sent: Friday, July 15, 2005 12:06 PM
 Subject: [oracle_br] Materialized View 


 Estou criando uma view Materialized View

 e no select contem varias tabelas com join como que
 faço pra dar um refresh na view quando ha alteração
 em
 qualquer uma da tabelas.


 Obrigado


 Welvis Douglas

 __
 Converse com seus amigos em tempo real com o Yahoo!
 Messenger
 http://br.download.yahoo.com/messenger/



 __

 Pesquisar Histórico:

 http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
 Moderadores da lista:Dorian Anderson Soutto
 [EMAIL PROTECTED]
 Fernanda Damous [EMAIL PROTECTED]
 Alisson Aguiar [EMAIL PROTECTED]

 __
 http://br.groups.yahoo.com/group/oracle_br/

 __
 Links do Yahoo! Grupos












 __

 Pesquisar Histórico:
 http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
 Moderadores da lista:Dorian Anderson Soutto
 [EMAIL PROTECTED]
 Fernanda Damous [EMAIL PROTECTED]
 Alisson Aguiar [EMAIL PROTECTED]
 __
 http://br.groups.yahoo.com/group/oracle_br/
 __



 -
 Links do Yahoo! Grupos

   Para visitar o site do seu grupo na web, acesse:
 http://br.groups.yahoo.com/group/oracle_br/

   Para sair deste grupo, envie um e-mail para:
 [EMAIL PROTECTED]

   O uso que você faz do Yahoo! Grupos está sujeito
 aos Termos do Serviço do Yahoo!.







 ___
 Yahoo! Acesso Grátis - Internet rápida e grátis.
 Instale o discador agora

Re: [oracle_br] Materialized View ????

2005-07-15 Por tôpico Jonathan Barbosa
Olha que interessante!! Alguém poderia me explicar as regras usadas pelo 
Oracle nas views materializadas ON COMMIT?

SQL CREATE MATERIALIZED VIEW TESTE2
  2  refresh complete on commit
  3AS
  4  select last_name from employees;
select last_name from employees
  *
ERROR at line 4:
ORA-12054: cannot set the ON COMMIT refresh attribute for the materialized 
view

SQL  CREATE MATERIALIZED VIEW TESTE2
  2   refresh complete on commit
  3 AS
  4   select e.last_name from employees e,departments d;

Materialized view created.



- Original Message - 
From: Jonathan Barbosa [EMAIL PROTECTED]
To: oracle_br@yahoogrupos.com.br
Sent: Friday, July 15, 2005 4:52 PM
Subject: Re: [oracle_br] Materialized View 


 Não sei porque o Oracle não está permitindo a criação desta view
 materializada, talvez seja devido ao número de tabelas ou outra coisa que
 não saberia te explicar. Podes usar a opção ON DEMAND ou START WITH e NEXT
 para especificar um tempo de atualização.
 Agora,  esta consulta retorna um número enorme de dados como em data
 warehouses? Pelo número de tabelas especificadas a opção on COMMIT poderá
 até trazer problemas de performance se alguma das tabelas mencionadas é
 acessada com uma certa frequência. Estes dados serão requeridos com que
 frequência?As tabelas bases são atualizadas de quanto em quanto tempo?


 Jonathan



 - Original Message - 
 From: Welvis Douglas Silva Moreto [EMAIL PROTECTED]
 To: oracle_br@yahoogrupos.com.br
 Sent: Friday, July 15, 2005 1:54 PM
 Subject: Re: [oracle_br] Materialized View 




 ELE DA UM O SEGUINTE ERRO QUANDO USO ESSA OPÇÃO.

 ORA-12054: cannot set the ON COMMIT refresh attribute
 for the materialized view

 ESSE É O SELECT QUE ESTOU USANSDO

 SELECT PROD_ORIG.ID_PRODUTO ID_PRODUTOORIG,

 DECODE(PCON.ID_PRODUTODESTINO,NULL,PROD_ORIG.ID_PRODUTO,PCON.ID_PRODUTODESTINO)
 ID_PRODUTODEST,

 DECODE(PCON.ID_PRODUTODESTINO,NULL,1,PCON.PC_CONVERSAO)
PC_CONVERSAO,
   PROD.ID_CATEGORIACOML,
   PROD.ID_GRUPOPRODTRIB,
   PROD.ID_PRODUTOFAMILIA,
   PROD.ID_CLASSETRANSPORTE,
   PROD.ID_PRODUTOPESO,
   PROD.ID_CLASSEPRODPCP,
   PROD.ID_PRODUTO_NCM,
   PROD.ID_CLASSESEGURO,
   PROD.ID_GRUPOCONTPROD,
   PROD.ID_PRODUTOAFV,
   PROD.ID_UNIDADE,
   PROD.DS_PRODUTO,
   PROD.PS_KGS_LIQ,
   PROD.VOLUME_M3,
   PROD.BO_GENERICO,
   PROD.NR_UNIDADES,
   PROD.PS_KGS_BRUTO,
   PROD.CD_PESQAUXILIAR,
   PROD.QT_PRODUTO_PALLET,
   PROD.TP_ORIGEM_MERCADORIA,
   PROD.DH_CADASTRO,
   PROD.BO_ATIVO,
   PROD.CD_DATAFLEX,
   PROD.DH_ULT_ALTER,
   PROD.CM_COMPRIMENTO,
   PROD.QT_VOLUMES,
   PROD.CM_LARGURA,
   PROD.CM_ALTURA,
   PROD.TP_PRODUTO,
   UNID.ABREVIATURA,
   UNID.DS_UNIDADE,
   CATG.DS_CATEGORIACOML,
   TPPR.ID_TIPOPRODUTO,
   TPPR.DS_TIPOPRODUTO
 FROM  PRODUTO  PROD,
   PRODUTO  PROD_ORIG,
   PRODUTOCONVERSAO PCON,
   UNIDADE  UNID,
   CATEGORIACOMLCATG,
   TIPOPRODUTO  TPPR
 WHERE PROD.ID_PRODUTO   =
 DECODE(PCON.ID_PRODUTODESTINO,NULL,PROD_ORIG.ID_PRODUTO,PCON.ID_PRODUTODESTINO)
 AND   PROD_ORIG.ID_PRODUTO  =
 PCON.ID_PRODUTOORIGEM(+)
 AND   PCON.BO_PADRAO_REL(+) = 'S'
 AND   UNID.ID_UNIDADE   = PROD.ID_UNIDADE
 AND   CATG.ID_CATEGORIACOML =  PROD.ID_CATEGORIACOML
 AND   TPPR.ID_TIPOPRODUTO   = CATG.ID_TIPOPRODUTO
 /

 --- Jonathan Barbosa [EMAIL PROTECTED] escreveu:


 -
 Use a opção ON COMMIT

 CREATE MATERIALIZED VIEW teste
 REFRESH FAST ON COMMIT
  .
   .
.


 Jonathan


 - Original Message - 
 From: Welvis Douglas Silva Moreto
 [EMAIL PROTECTED]
 To: oracle_br@yahoogrupos.com.br
 Sent: Friday, July 15, 2005 12:06 PM
 Subject: [oracle_br] Materialized View 


 Estou criando uma view Materialized View

 e no select contem varias tabelas com join como que
 faço pra dar um refresh na view quando ha alteração
 em
 qualquer uma da tabelas.


 Obrigado


 Welvis Douglas

 __
 Converse com seus amigos em tempo real com o Yahoo!
 Messenger
 http://br.download.yahoo.com/messenger/



 __

 Pesquisar Histórico:

 http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
 Moderadores da lista:Dorian Anderson Soutto
 [EMAIL PROTECTED]
 Fernanda Damous [EMAIL PROTECTED]
 Alisson Aguiar [EMAIL PROTECTED]

 __
 http://br.groups.yahoo.com/group/oracle_br/

 __
 Links do Yahoo! Grupos












 __

 Pesquisar Histórico:
 http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
 Moderadores da lista