Sinonime vs. Alias (în bazele de date ORACLE) Sinonime private și Sinonime publice
În limba engleză, sinonimul și aliasul au aproape aceleași semnificații. Dar în bazele de date acestea sunt două lucruri diferite. Mai ales în bazele de date ORACLE, ambele utilizări sunt diferite. Sinonimele sunt folosite pentru a trimite obiecte dintr-o schemă sau dintr-o bază de date dintr-o altă schemă. Deci, sinonimul este un tip de obiect bază de date. Dar pseudonimele vin într-un mod diferit. Asta inseamna; acestea nu sunt obiecte baze de date. Aliasurile sunt folosite pentru a trimite tabele, vizualizări și coloane în interogări.
Sinonime
Acestea sunt un tip de obiecte baze de date. Ele se referă la alte obiecte din baza de date. Cea mai obișnuită utilizare a sinonimului este de a trimite un obiect al unei scheme separate utilizând un alt nume. Dar sinonimele pot fi create pentru a trimite obiectele unei alte baze de date, de asemenea (în baze de date distribuite, folosind link-uri de baze de date). Tabelele, vederile, funcțiile, procedurile, pachetele, secvențele, vederile materializate, obiectele de clasă java și declanșatoarele pot fi folosite ca referințe pentru sinonime. Există două tipuri de sinonime.
Aici este o sintaxă simplă pentru a crea un sinonim într-o bază de date separată,
creați sinonimul myschema.mytable1 pentru [protejat prin e-mail]_link1
Deoarece avem un nume sinonim mytable1 în myschema pentru [protejat prin e-mail]_link1 (tabel distribuit de baze de date), putem folosi tabela de baze de date distribuite cu ușurință mytable1. Nu este nevoie să folosim numele de obiect lung cu link-ul bazei de date peste tot.
Alias
Acestea sunt doar un alt nume pentru o vizualizare, o tabelă sau o coloană în interiorul unei interogări. Ele nu sunt obiecte baze de date. Prin urmare, aliasurile nu sunt valabile peste tot în schemă / bază de date. Ele sunt valabile doar în interogare. Să vedem acest exemplu,
selectați tab1.col1 ca c1, tab2.col2 ca c2
din fișierul user1.tab1 tab1, user1.tab2 tab2
unde tab1.col1 = tab2.col2
Aici, c1 și c2 sunt aliasuri de coloane, care sunt utilizate pentru tab1.col1 și tab2.col2, iar tab1 și tab2 sunt aliasuri de tabelă, care sunt utilizate pentru user1.table1 și user2.table2. Toate aceste pseudonime sunt valide numai în această interogare.
Care este diferența dintre Sinonim și Alias (în bazele de date ORACLE)?
|