Razlika med sopomenko in vzdevkom

Sopomenka ali vzdevek (v bazah podatkov ORACLE) | Zasebni sopomenki in Javni sopomenki
 

V angleščini imata sopomenka in vzdevki skoraj enake pomene. Toda v zbirkah podatkov sta to dve različni stvari. Zlasti v bazah ORACLE sta obe uporabi različni. Sinonimi se uporabljajo za sklicevanje predmetov sheme ali baze podatkov iz druge sheme. Torej, sinonim je vrsta objekta baze podatkov. Toda vzdevki prihajajo na drugačen način. To pomeni; niso objekti baze podatkov. Zamiki se uporabljajo za navajanje tabel, pogledov in stolpcev znotraj poizvedb.

Sinonimi

To so vrsta predmetov baze podatkov. Nanašajo se na druge predmete v bazi podatkov. Najpogostejša uporaba sinonima je navajanje predmeta ločene sheme z uporabo drugega imena. Lahko pa se ustvarijo tudi sopomenke, ki se nanašajo tudi na predmete druge baze podatkov (v porazdeljenih bazah podatkov s pomočjo povezav do baze podatkov). Tabele, pogledi, funkcije, postopki, paketi, sekvence, materializirani pogledi, predmeti in sprožilci razreda java se lahko uporabljajo kot sklici na sopomenke. Obstajata dve vrsti sopomenk.

  1.  Zasebni sinonimi (uporablja jih lahko le uporabnik, ki jih je ustvaril.)
  2.  Javni sinonimi (uporabljajo jih lahko vsi uporabniki, ki imajo ustrezne privilegije)

Tu je preprosta skladnja za ustvarjanje sinonima v ločeni bazi podatkov,

ustvarite sinonim myschema.mytable1 za [email protected] _link1

Ker imamo sinonim z imenom mytable1 v skrivnost za [zaščiten e-poštni naslov] _link1 (tabela porazdeljene baze podatkov), lahko preprosto uporabimo tabelo porazdeljene baze podatkov z uporabo mytable1. Ni nam treba uporabljati dolgega imena predmeta s povezavo do baze podatkov povsod.

Vzdevek

To je samo drugo ime za pogled, tabelo ali stolpec znotraj poizvedbe. Niso predmeti zbirke podatkov. Zato vzdevki niso veljavni povsod v shemi / bazi podatkov. Veljajo samo znotraj poizvedbe. Poglejmo ta primer,

                                    izberite tab1.col1 kot c1, tab2.col2 kot c2

                                       od uporabnika1.tab1 tab1, uporabnika1.tab2 zavihek2

                                       kjer tab1.col1 = tab2.col2

Tu sta c1 in c2 vzdevki stolpcev, ki se uporabljata za tab1.col1 in tab2.col2, tab1 in tab2 pa sta vzdevki tabel, ki se uporabljata za user1.table1 in user2.table2. Vsi ti vzdevki so veljavni samo znotraj te poizvedbe. 

Kakšna je razlika med sinonimom in vzdevkom (v zbirkah podatkov ORACLE)?

  • Sinonimi so vrsta predmeta objekta. Toda vzdevki so samo ime za sklicevanje na tabelo, pogled ali stolpec znotraj poizvedbe. Ni predmet baze podatkov.
  • Sinonimi se lahko ustvarijo za tabele, poglede, funkcije, postopke, pakete, zaporedja, materializirane poglede, vrste predmetov in sprožilce razreda java. Toda vzdevki se uporabljajo samo za poglede, tabele in njihove stolpce.
  • Ker so sinonimi predmet baze podatkov, so veljavni znotraj sheme (zasebni sinonim) ali znotraj baze podatkov (javni sinonim). Toda vzdevki veljajo znotraj poizvedbe, kjer se uporabljajo.
  • Vsaka shema potrebuje "Ustvari sinonim" privilegij za ustvarjanje sinonimov. Ni pa nobenega privilegija za uporabo vzdevkov.