Differenza tra sinonimo e Alias ​​

Anonim

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.

  1. Sinonimi privati ​​(possono essere utilizzati da tutti gli utenti che dispongono dei privilegi appropriati)
  2. 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.

Alias ​​

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 ​​

(in database ORACLE) ? I sinonimi sono un tipo di oggetto di database. Ma gli alias sono solo un nome per indicare una tabella, una vista o una colonna all'interno di una query. Non un oggetto database.