3-4- ish. Mavzu. Funktsiyalar va saqlangan protseduralarni yaratish, o'zgartirish, qo'llash va o'chirish (10 balli)



Download 50,68 Kb.
bet2/12
Sana14.07.2022
Hajmi50,68 Kb.
#799422
1   2   3   4   5   6   7   8   9   ...   12
Bog'liq
1648880083 (1)

EXEC sp_helplogins;
Jadvalda saqlangan tizim protseduralaridan foydalangan holda bajariladigan harakatlar haqida tushuncha berish. 10.6 ba'zi misollar keltiradi. SQL Serverda mingdan ortiq tizim saqlanadigan protseduralar mavjud.
SQL Server tizimida saqlangan protsedura misollari
Foydalanuvchi foydalanuvchi ma'lumotlar bazalarida va vaqtinchalik ob'ektlar uchun ma'lumotlar bazalarida saqlangan protseduralarni yaratishi mumkin. Ikkinchi holda, saqlangan protsedura bo'ladi vaqtinchalik. Vaqtinchalik jadvallarda bo'lgani kabi, vaqtinchalik saqlanadigan protsedura nomi, agar u mahalliy vaqtinchalik saqlanadigan protsedura bo'lsa, "#" prefiksi bilan yoki global bo'lsa, "##" bilan boshlanishi kerak. Mahalliy vaqtinchalik protsedura faqat u yaratilgan ulanish doirasida, global - va boshqa ulanishlar doirasida qo'llanilishi mumkin.
SQL Server dasturlashtiriladigan ob'ektlari Transact-SQL asboblari yoki assemblies yordamida yaratilishi mumkin (ing. assembly) Microsoft .Net Frameworkning Common Language Runtime (CRL) da. Ushbu qo'llanmada faqat birinchi usul ko'rib chiqiladi.
Saqlangan protseduralar CREATE PROCEDURE bayonoti yordamida yaratiladi (PROC deb qisqartirilishi mumkin), uning formati quyida ko'rsatilgan:
CREATE (PROC I PROCEDURE) proc_name [; raqam]
[(gparametr maʼlumotlar_turi)
[“Standart] |
[BILAN [, ... n]]
[REPLIKA UCHUN]
AS ([BEGIN] sql_statement [;] [... n] [END])
Agar saqlangan protsedura (yoki trigger, funktsiya, ko'rinish) SIFIRLASH opsiyasi bilan yaratilgan bo'lsa, uning kodi matnni o'qib bo'lmaydigan qilib o'zgartiriladi. Shu bilan birga, ta'kidlanganidek, ishlatilgan algoritm SQL Serverning oldingi versiyalaridan ko'chirilgan va uni ishonchli himoya algoritmi deb hisoblash mumkin emas - teskari konvertatsiyani tezda amalga oshirishga imkon beruvchi yordamchi dasturlar mavjud.
RECOMPILE opsiyasi tizimga har safar protsedura chaqirilganda matnni qayta kompilyatsiya qilishni buyuradi. Odatda, birinchi ishga tushirilganda tuzilgan protsedura keshda saqlanadi, bu esa ishlashni yaxshilashi mumkin.
EXECUTE AS protsedura bajarilishi kerak bo'lgan xavfsizlik kontekstini belgilaydi. Keyin f CALLER | qiymatlaridan biri O'ZI | Egasi | "foydalanuvchi_nomi"). CALLER sukut bo‘lib, kod ushbu modulga qo‘ng‘iroq qilayotgan foydalanuvchining xavfsizlik kontekstida bajarilishini bildiradi. Shunga ko'ra, foydalanuvchi nafaqat dasturlashtirilgan ob'ektning o'zi, balki u ta'sir qiladigan boshqa ma'lumotlar bazasi ob'ektlari uchun ham ruxsatlarga ega bo'lishi kerak. O'ZINI ISHLATISH dasturlashtiriladigan ob'ektni yaratish yoki o'zgartirish uchun foydalanuvchi kontekstidan foydalanishni anglatadi. OWNER kodning amaldagi amaldagi egasi kontekstida bajarilishini bildiradi. Agar uning egasi aniqlanmagan bo'lsa, unda u tegishli bo'lgan sxemaning egasi nazarda tutiladi. "foydalanuvchi_nomi" sifatida ISHLATISH foydalanuvchi nomini (bitta tirnoq ichida) aniq ko'rsatishga imkon beradi.
Jarayon uchun parametrlar belgilanishi mumkin. Bu qiymatlarni protseduraga o'tkazish uchun ishlatiladigan mahalliy o'zgaruvchilar. Agar parametr OUTPUT kalit so'zi (yoki qisqacha OUT) bilan e'lon qilingan bo'lsa, u chiqish parametridir: protsedura tugagandan so'ng ko'rsatilgan qiymatdan protsedurani chaqirgan dastur foydalanishi mumkin. READONLY kalit so'zi saqlangan protsedura ichida parametr qiymatini o'zgartirib bo'lmasligini bildiradi.
Parametrlarga qiymatlar tayinlanishi mumkin, ammo sukut bo'yicha, agar protsedura chaqirilganda parametr qiymati aniq ko'rsatilmagan bo'lsa, ular qo'llaniladi. Keling, bir misolni ko'rib chiqaylik:
PROC surma yaratish (@ a int, @b int = 0,
© natija int OUTPUT) AS
SET @ natija = 0a + 0b
Biz uchta parametrli protsedura yaratdik va @b parametrining standart qiymati 0 ga teng, @result parametri esa chiqish parametridir: u orqali qiymat chaqiruvchi dasturga qaytariladi. Amalga oshirilgan harakatlar juda oddiy - chiqish parametri ikkita kirish summasining qiymatini oladi.
SQL Server Management Studio'da ishlaganda yaratilgan saqlangan protsedurani Dasturlashtiriladigan ma'lumotlar bazasi ob'ektlari bo'limida topish mumkin. (ing. Dasturlash imkoniyati) saqlangan protseduralar bo'limida (10.2-rasm).
Protsedurani chaqirishda siz kiritish parametrlari sifatida ham o'zgaruvchilardan, ham doimiylardan foydalanishingiz mumkin. Keling, ikkita misolni ko'rib chiqaylik. Birinchisida, protseduraning kirish parametrlari aniq konstantalar bilan o'rnatiladi, qo'ng'iroqdagi chiqish parametri uchun OUTPUT kalit so'zi ko'rsatilgan. Ikkinchi variantda o'zgaruvchining qiymati birinchi kiritish parametri sifatida ishlatiladi va ikkinchi parametr uchun DEFAULT kalit so'zidan foydalangan holda standart qiymatdan foydalanish kerakligi ko'rsatilgan:

Download 50,68 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   12




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish