Koʻrish va saqlangan protsedura oʻrtasidagi farq

Mundarija:

Koʻrish va saqlangan protsedura oʻrtasidagi farq
Koʻrish va saqlangan protsedura oʻrtasidagi farq

Video: Koʻrish va saqlangan protsedura oʻrtasidagi farq

Video: Koʻrish va saqlangan protsedura oʻrtasidagi farq
Video: Yosh qiz o'z hayotini saqlash uchun qamoqxonada qizlarni nafsini qondiradi | "Малолетка 2014" 2024, Noyabr
Anonim

Koʻrish va saqlangan protsedura

Ko'rinishlar va saqlangan protseduralar ma'lumotlar bazasi ob'ektlarining ikki turidir. Ko'rishlar bir yoki bir nechta jadvallardan ma'lumotlarni to'playdigan saqlangan so'rovlar turidir. Mana, ko'rinish yaratish sintaksisi

koʻrish nomini yaratish yoki almashtirish

as

select_statement;

Saqlangan protsedura ma'lumotlar bazasi serverida saqlanadigan oldindan tuzilgan SQL buyruqlar to'plamidir. Har bir saqlangan protsedura chaqiruvchi nomga ega bo'lib, ularni boshqa paketlar, protseduralar va funktsiyalar ichida chaqirish uchun foydalaniladi. Bu saqlangan protsedura yaratish sintaksisi (ORACLE da), protsessual protsedura nomini (parametrlarini) yaratish yoki almashtirish

is

boshlash

bayonotlar;

istisno

istisnolar bilan ishlash

end;

Koʻrish

Koʻrinish virtual jadval vazifasini bajaradi. Tanlangan gapni tanasi ichida yashiradi. Ushbu tanlash bayonoti juda murakkab bo'lishi mumkin, u bir nechta jadval va ko'rinishlardan ma'lumotlarni oladi. Shuning uchun, boshqacha qilib aytganda, ko'rinish ma'lumotlar bazasida saqlanadigan nomli tanlash bayonotidir. Ko'rinishdan oxirgi foydalanuvchilardan jadval munosabatlari ortidagi mantiqni yashirish uchun foydalanish mumkin. Ko'rinish saqlangan so'rov natijasi bo'lgani uchun u hech qanday ma'lumot saqlamaydi. U asosiy jadvallardan ma'lumotlarni to'playdi va ko'rsatadi. Ko'rishlar ma'lumotlar xavfsizligida ham muhim rol o'ynaydi. Jadval egasi oxirgi foydalanuvchilarga faqat ma'lumotlar to'plamini ko'rsatishi kerak bo'lganda, ko'rinish yaratish yaxshi echimdir. Koʻrishlarni ikki toifaga boʻlish mumkin

  • Yangilanadigan koʻrinishlar (QOʻSHISH, YANGILASH va OʻCHIRISH uchun ishlatilishi mumkin boʻlgan koʻrinishlar)
  • Yangilanmaydigan koʻrinishlar (QOʻSHISH, YANGILASH va OʻCHIRISH uchun ishlatib boʻlmaydigan koʻrishlar)

Yangilanadigan koʻrinishlar quyidagilarni oʻz ichiga olmaydi, Operatorlarni sozlash (INTERSECT, MINUS, UNION, UNION ALL)

DISTINCT

Guruhlarni yigʻish funksiyalari (AVG, COUNT, MAX, MIN, SUM va boshqalar)

band boʻyicha guruhlash

bandBO'YICHA ulaning

BUNDAN BOSHLASH

Tanlangan roʻyxatdagi toʻplam ifodasi

Tanlangan roʻyxatdagi quyi soʻrovlar

Soʻrovga qoʻshilish

Saqlangan protsedura

Saqlangan protseduralar dasturlash bloklari deb ataladi. Ular qo'ng'iroq qilish uchun nomga ega bo'lishi kerak. Saqlangan protseduralar parametrlarni foydalanuvchi kiritishi va protsedura ortidagi mantiq bo'yicha jarayon sifatida qabul qiladi va natijani beradi (yoki ma'lum bir harakatni bajaradi). O'zgaruvchilar deklaratsiyasi, o'zgaruvchilarni tayinlash, boshqaruv bayonotlari, tsikllar, SQL so'rovlari va boshqa funktsiyalar/protsedura/paket chaqiruvlari protseduralar tanasi ichida bo'lishi mumkin.

Koʻrish va saqlangan protsedura oʻrtasidagi farq nima?

Keling, bu ikkisi orasidagi farqni ko'rib chiqaylik.

• Koʻrishlar virtual jadvallar vazifasini bajaradi. Ular to'g'ridan-to'g'ri SQL so'rovlarining yopilishidan (tanlangan) foydalanish mumkin, lekin protseduralar so'rovlar yopilishidan boshlab ishlatilmaydi.

• Koʻrishlar oʻz tanasi sifatida faqat tanlangan bayonotga ega, lekin protseduralar oʻzgaruvchilar deklaratsiyasi, oʻzgaruvchilarni tayinlash, boshqaruv bayonotlari, tsikllar, SQL soʻrovlari va boshqa funksiyalar/protsedura/paket chaqiruvlariga ega boʻlishi mumkin.

• Protsedura bajarish uchun parametrlarni qabul qiladi, lekin koʻrinishlar parametrlarning bajarilishini xohlamaydi.

• Yozuv turlarini % ROWTYPE yordamida koʻrishlar asosida yaratish mumkin, lekin protseduralar yordamida yozuv turlarini yaratib boʻlmaydi.

• SQL maslahatlari ijro rejasini optimallashtirish uchun ichki koʻrinishni tanlash bayonotidan foydalanish mumkin, lekin SQL maslahatlaridan saqlangan protseduralarda foydalanilmaydi.

• OʻCHIRISH, QOʻSHISH, YANGILASH, TANGLASH, FLASHBACK va DEBUG funksiyalarini koʻrishlarda berish mumkin, lekin protseduralarda faqat ISHLATISH va DEBUG funksiyalarini berish mumkin.

Tavsiya: