Sinonim va taxallus (ORACLE ma'lumotlar bazalarida) | Shaxsiy sinonimlar va umumiy sinonimlar
Ingliz tilida sinonim va taxallus deyarli bir xil ma'noga ega. Ammo ma'lumotlar bazalarida bu ikki xil narsa. Ayniqsa, ORACLE ma'lumotlar bazalarida ulardan foydalanish har xil. Sinonimlar sxemaning ob'ektlariga yoki boshqa sxemadan ma'lumotlar bazasiga murojaat qilish uchun ishlatiladi. Shunday qilib, sinonim ma'lumotlar bazasi ob'ekti turidir. Ammo taxalluslar boshqacha tarzda keladi. Bu degani; ular ma'lumotlar bazasi ob'ektlari emas. Taxalluslar so'rovlar ichidagi jadvallar, ko'rinishlar va ustunlarga murojaat qilish uchun ishlatiladi.
Sinonimlar
Bular maʼlumotlar bazasi obyektlarining bir turi. Ular ma'lumotlar bazasidagi boshqa ob'ektlarga murojaat qiladilar. Sinonimning eng keng tarqalgan qo'llanilishi alohida sxemaning ob'ektiga boshqa nom yordamida murojaat qilishdir. Ammo sinonimlar boshqa ma'lumotlar bazasi ob'ektlariga murojaat qilish uchun ham yaratilishi mumkin (tarqatilgan ma'lumotlar bazalarida, ma'lumotlar bazasi havolalaridan foydalangan holda). Sinonimlar uchun havola sifatida jadvallar, ko'rinishlar, funktsiyalar, protseduralar, paketlar, ketma-ketliklar, materiallashtirilgan ko'rinishlar, java sinfi ob'ektlari va triggerlardan foydalanish mumkin. Sinonimlarning ikki turi mavjud.
- Shaxsiy sinonimlar (faqat ularni yaratgan foydalanuvchi foydalanishi mumkin.)
- Ommaviy sinonimlar (tegishli imtiyozlarga ega boʻlgan barcha foydalanuvchilar foydalanishi mumkin)
Mana, alohida ma'lumotlar bazasida sinonim yaratish uchun oddiy sintaksis, [email protected]_link1 uchun myschema.mytable1 sinonimini yarat
Bizda myschemada [email protected]_link1 (tarqatilgan maʼlumotlar bazasi jadvali) uchun mytable1 nomli sinonim mavjud boʻlganligi sababli, taqsimlangan maʼlumotlar bazasi jadvaliga mytable1 yordamida bemalol murojaat qilishimiz mumkin. Biz hamma joyda maʼlumotlar bazasi havolasi bilan uzun obyekt nomidan foydalanishimiz shart emas.
taxallus
Bular soʻrov ichidagi koʻrinish, jadval yoki ustunning boshqa nomi. Ular ma'lumotlar bazasi ob'ektlari emas. Shuning uchun taxalluslar sxema/ma'lumotlar bazasining hamma joyida amal qilmaydi. Ular faqat so'rov ichida amal qiladi. Keling, ushbu misolni ko'rib chiqaylik, tab1.col1 ni c1 sifatida, tab2.col2 ni c2 sifatida tanlang
user1.tab1 tab1, user1.tab2 tab2
bu yerda tab1.col1=tab2.col2
Bu yerda c1 va c2 ustun taxalluslari boʻlib, ular tab1.col1 va tab2.col2 uchun ishlatiladi, tab1 va tab2 esa jadval taxalluslari boʻlib, ular user1.table1 va user2.table2 uchun ishlatiladi. Bu taxalluslarning barchasi faqat ushbu so‘rovda amal qiladi.
Sinonim va Alias (ORACLE ma'lumotlar bazalarida) o'rtasidagi farq nima?