Sinonīms pret Alias (ORACLE datubāzēs) Privātie sinonīmi un publiskie sinonīmi
Angļu valodā sinonīmam un aizstājvārdam ir gandrīz tāda pati nozīme. Bet datu bāzēs tās ir divas dažādas lietas. Īpaši ORACLE datubāzēs to abu lietojums ir atšķirīgs. Sinonīmus izmanto, lai atsauktu shēmas objektus vai datu bāzi no citas shēmas. Tātad sinonīms ir datu bāzes objekta tips. Bet aizstājvārdi nāk citādi. Tas nozīmē; tie nav datu bāzes objekti. Pseidonīmi tiek izmantoti, lai norādītu tabulas, skatus un kolonnas vaicājumos.
Sinonīmi
Tie ir datu bāzes objektu veidi. Tie attiecas uz citiem objektiem datu bāzē. Sinonīmu visbiežāk izmanto, atsaucoties uz atsevišķas shēmas objektu, izmantojot citu nosaukumu. Bet sinonīmus var izveidot, lai norādītu arī citas datubāzes objektus (sadalītās datubāzēs, izmantojot datu bāzes saites). Tabulas, skatus, funkcijas, procedūras, paketes, secības, materializētos skatus, Java klases objektus un aktivizētājus var izmantot kā atsauces uz sinonīmiem. Ir divu veidu sinonīmi.
- Privāti sinonīmi (var izmantot tikai lietotājs, kurš tos izveidojis.)
- Publiski sinonīmi (var izmantot visi lietotāji, kuriem ir atbilstošas privilēģijas)
Šeit ir vienkārša sintakse, lai sinonīmu izveidotu atsevišķā datu bāzē,
izveidot sinonīmu myschema.mytable1 vietnei [email protected] _link1
Tā kā myschemā mums ir sinonīms ar nosaukumu mytable1 [e-pasts aizsargāts] _link1 (sadalītās datu bāzes tabula), mēs varam viegli norādīt sadalītās datu bāzes tabulu, izmantojot mytable1. Mums nav visur jāizmanto garš objekta nosaukums ar datu bāzes saiti.
Alias
Šie ir tikai cits nosaukums skatam, tabulai vai kolonnai vaicājuma iekšpusē. Tie nav datu bāzes objekti. Tāpēc aizstājvārdi shēmā / datu bāzē nav derīgi visur. Tie ir derīgi tikai vaicājumā. Apskatīsim šo piemēru, atlasiet tab1.col1 kā c1, tab2.col2 kā c2
no user1.tab1 tab1, user1.tab2 tab2
kur tab1.col1 = tab2.col2
Šeit c1 un c2 ir kolonnu aizstājvārdi, kurus izmanto tab1.col1 un tab2.col2, un tab1 un tab2 ir tabulas aizstājvārdi, kurus izmanto user1.table1 un user2.table2. Visi šie aizstājvārdi ir derīgi tikai šajā vaicājumā.
Kāda ir atšķirība starp sinonīmu un aizstājvārdu (ORACLE datu bāzēs)? Sinonīmi ir datu bāzes objekta tips. Bet aizstājvārdi ir tikai nosaukums, kas norāda tabulu, skatu vai kolonnu vaicājuma iekšpusē. Nav datu bāzes objektsSinonīmus var izveidot tabulām, skatiem, funkcijām, procedūrām, paketēm, sekvencēm, materializētiem skatiem, Java klases objektu tipiem un aktivizētājiem. Bet aizstājvārdi tiek izmantoti tikai skatiem, tabulām un to kolonnāmTā kā sinonīmi ir datu bāzes objekts, tie ir derīgi shēmā (privātais sinonīms) vai datu bāzes iekšienē (publiskais sinonīms). Bet aizstājvārdi ir derīgi vaicājumā, kur tie tiek izmantotiLai izveidotu sinonīmus, katrai shēmai ir nepieciešama privilēģija izveidot sinonīmu. Bet aizstājvārdu izmantošanai nav nekādu privilēģiju |