Bonjour,
Version d'Oracle : 10.2.0.4.0 ou 11.2.0.1.0
J'ai 3 schémas : DVLP0000, DVLP0001 et DVLP0002
J'ai une table T dans DVLP0001 et DVLP0002.
Question 1 : comment créer une vue matérialisée appartenant à DVLP0000 et attaquant les tables T (de DVLP0001 et DVLP0002 donc).
Ce que j'ai fait :
=> j'obtiens l'erreur ORA-12054 : impossible de définir l'attribut de régénération ON COMMIT pour la vue matérialisée
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 create materialized view log on DVLP0001.T create materialized view log on DVLP0002.T grant select on DVLP0001.T to DVLP0000 grant select on DVLP0002.T to DVLP0000 grant select on DVLP0001.MLOG$_T to DVL0000 grant select on DVLP0002.MLOG$_T to DVL0000 create materialized view DVLP0000.MV_T refresh fast on commit as select * from DVLP0001.T union select * from DVLP0002.T
=> pourquoi ? Une idée ?
Question 2 : j'ai 2 vues matérialisées de type "on resfresh fast on commit"
=> ok, elles fonctionnent bien.
Maintenant dans un autre schéma, je veux une vue matérialisée qui se mette à jour lors de la mise à jour de l'une de ces 2 vues.
=> mon pb : impossible de mettre "on refresh fast on commit" sur cette 3ième vue matérialisée (qui fait un union genre select * from DVLP0001.MV1 union select * from DVLP0002.MV1)
=> Comment faire ?
Merci d'avance.
Partager