Articles

Oracle CREATE SYNONYM

Riepilogo: in questo tutorial, imparerai come utilizzare l’istruzione OracleCREATE SYNONYM per creare un nome alternativo per un oggetto di database come una tabella, una vista, una sequenza, una procedura, una funzione memorizzata e una vista materializzata.

Introduzione all’istruzione Oracle CREATE SYNONYM

L’istruzioneCREATE SYNONYM consente di creare un sinonimo che è un nome alternativo per un oggetto di database come una tabella, una vista, una sequenza, una procedura, una funzione memorizzata e una vista materializzata.

Ecco la sintassi di base per creare un nuovo sinonimo:

CREATE SYNONYM schema.synonym_nameFOR schema.object;

In questa sintassi:

  • Per prima cosa, specifica il nome del sinonimo e il suo schema. Se si salta lo schema, Oracle creerà il sinonimo nel proprio schema.
  • In secondo luogo, specificare l’oggetto per il quale si desidera creare il sinonimo dopo la parola chiave FOR. Si noti che l’oggetto schema (schema.object) non può essere contenuto in un pacchetto.
  • In terzo luogo, utilizzare l’opzione OR REPLACE se si desidera ricreare il sinonimo se esiste già. Nel caso in cui il sinonimo non esista, OR REPLACE non ha alcun effetto.
  • In quarto luogo, utilizzare il PUBLIC parola chiave per creare un sinonimo pubblico che è un sinonimo che sarà accessibile a tutti gli utenti. Si noti che gli utenti devono disporre di privilegi sufficienti sugli oggetti sottostanti per utilizzare i sinonimi pubblici.

Una volta definito un sinonimo per un oggetto, è possibile fare riferimento nelle istruzioni SQL comeSELECTINSERTUPDATE eDELETE.

Si noti che è possibile creare un sinonimo per una tabella o una vista che non esiste. Tuttavia, la tabella o la vista di destinazione devono essere disponibili al momento in cui si utilizza il sinonimo. Inoltre, i sinonimi condividono lo stesso spazio dei nomi delle tabelle o delle viste, pertanto non è possibile creare un sinonimo con lo stesso nome di una tabella o di una vista già presente nello stesso schema.

Oracle CREATE SYNONYM example

Questo esempio utilizza l’istruzioneCREATE SYNONYM per creare un sinonimo per la tabellainventories dal database di esempio:

CREATE SYNONYM stocksFOR inventories;

Se si utilizza SQL Developer, è possibile visualizzare le appena creato sinonimo sotto il Sinonimo di nodi, come mostrato nella seguente immagine:

oracle creare sinonimo esempio

Ora, è possibile utilizzare i tag stocks sinonimo invece di inventories tabella nella query come la seguente:

SELECT * FROM stocks;

Vantaggi dei sinonimi di Oracle

in Primo luogo, sinonimi consentono di modificare complicato e lungo i nomi semplificato alias. È molto utile se si lavora con i sistemi legacy. Quindi, invece di fare riferimento a una tabella come human_resources.employee_locations, puoi usare offices.

In secondo luogo, i sinonimi possono aiutare la compatibilità con le versioni precedenti per le applicazioni legacy. Ad esempio, si rinomina una tabella ma non si desidera influire sulle applicazioni correnti che attualmente utilizzano la tabella. Per mantenere le applicazioni funzionanti correttamente, è possibile creare un sinonimo con il nome uguale al vecchio nome della tabella.

In terzo luogo, i sinonimi aiutano a spostare oggetti tra schemi, anche database, senza rompere il codice esistente.

In questo tutorial, hai imparato come utilizzare l’istruzione Oracle CREATE SYNONYM per creare un nome alternativo per un oggetto database.

  • Questo tutorial è stato utile?