Creazione sinonimo pubblico a livello di sistema
Domanda
Ho creato sinonimo pubblico come suggerito nella mia altra domanda circa la creazione di vista a livello di sistema. Detto questo ho creato sinonimo pubblico individuale fuori dalla vista in modo che non devo collegare al singolo dominio più. Il mio problema ora è come creare una sorta di maestro sinonimo pubblico per catturare tutti i sinonimi che ho creato in precedenza. Fino a che punto il "per" dichiarazione può essere utilizzato?
Esempio: A livello di sistema, correrò query per ogni dominio in cui viene creato MYVIEW: Creare o sostituire domain1_myview sinonimo pubblico per domain1.myview; Creare o sostituire domain2_myview sinonimo pubblico per domain2.myview; Creare o sostituire domain3_myview sinonimo pubblico per domain3.myview;
Poi ho 3 sinonimo pubblico sopra.
Poi ho provato a scrivere dichiarazione (per disperazione - non come esperto) come qui di seguito sperando di avere un solo Master_MYVIEW ma non è riuscito: Creare o sostituire MASTER_MYVIEW sinonimo pubblico per (select * from unione domain1_myview all select * da Union domain2_myview all select * from domain3_myview);
L'errore con quanto sopra: "ORA-00995: mancante o identificatore sinonimo valido"
La speranza che qualcuno mi può aiutare in questo compito. Have a nice :) giorno.
Soluzione
provare a creare un vista chiamata MASTER_MYVIEW prima (potrebbe essere necessario trattare con i privilegi di lì):
create view master_myview as select ...;
Quindi creare un sinonimo pubblico per quella nuova vista:
create or replace public synonym master_myview for <owner>.master_myview;