Differenza tra sinonimo e Alias
Sinonimo vs Alias (in database ORACLE) | Sinonimi privati e sinonimi pubblici
In inglese, sinonimi e alias hanno quasi gli stessi significati. Ma nelle banche dati queste sono due cose diverse. Specialmente nei database ORACLE, entrambi i loro usi sono diversi. I sinonimi vengono utilizzati per indicare gli oggetti di uno schema o di un database da un altro schema. Quindi sinonimo è un tipo di oggetto di database. Ma gli alias stanno arrivando in un modo diverso. Questo significa; essi non sono oggetti di database. Gli alias vengono utilizzati per indicare tabelle, viste e colonne all'interno delle query.
Sinonimi
Questi sono un tipo di oggetti di database. Essi si riferiscono ad altri oggetti del database. L'uso più comune di sinonimo è quello di far riferimento ad un oggetto di uno schema separato utilizzando un altro nome. Ma sinonimi possono essere creati per fare riferimento anche agli oggetti di un altro database (in database distribuiti, utilizzando i collegamenti del database). Le tabelle, le viste, le funzioni, le procedure, i pacchetti, le sequenze, le viste materializzate, gli oggetti di classe java e i trigger possono essere utilizzati come riferimenti per i sinonimi. Esistono due tipi di sinonimi.
- Sinonimi privati (possono essere utilizzati da tutti gli utenti che dispongono dei privilegi appropriati)
- Qui è un semplice sintassi per creare un sinonimo in un database separato,
crea sinonimo myschema. mytable1 per userA. table1 @ database_link1
Poiché abbiamo un sinonimo
mytable1 in myschema per userA. table1 @ database_link1 (tabella di database distribuita) , possiamo facilmente fare riferimento alla tabella di database distribuita utilizzando mytable1. Non abbiamo bisogno di utilizzare il nome dell'oggetto lungo con il collegamento del database ovunque.
Questi sono solo un altro nome per una vista, una tabella o una colonna all'interno di una query. Non sono oggetti database. Di conseguenza, gli alias non sono validi ovunque nello schema / database. Sono validi solo nella query. Vediamo questo esempio,
selezionare tab1. col1 come c1, tab2. col2 come c2
da utente1. tab1 tab1, user1. tab2 tab2
dove tab1. col1 = tab2. col2
Qui, c1 e c2 sono alias di colonna, utilizzati per tab1. col1 e tab2. col2 e tab1 e tab2 sono alias di tabella, utilizzati per user1. tabella1 e utente2. Tavolo 2. Tutti questi alias sono validi solo all'interno di questa query.
Qual è la differenza tra Sinonimo e Alias