Tranzaksiyalarni boshqarish




Download 72,25 Kb.
bet3/4
Sana12.12.2023
Hajmi72,25 Kb.
#116969
1   2   3   4
Bog'liq
4-mustaqil ish MB

Tranzaksiyalarni boshqarish.
SQL muhitida tranzaksiva tushunchasi. SQL tilida tranzaksiya deb, ma’lumotlami tiklashga nisbatan ajralmas bo'lgan operatorlar ketma-ketligiga aytiladi. SQL tilidagi har bir chaqirish moduli tranzaksiyadir. SQL tili tranzaksiyalari biror-bir modulning protseduralarini bajarishdan boshlanadi. COMMIT yoki ROLLBACK operatorining bajarilishi bilan tugaydi. Agar tranzaksiya ROLLBACK operatori bilan tugasa, prtoseduradagi barcha qilingan amallar bekor qilinadi. Har bir tranzaksiyaning “faqat o'qish” yoki “o'qish va yozish” tartiblari mavjud. Tranzaksiya tartiblari SET TRANSACTION operatori yordamida o'matiladi. Kutish qoidasiga nisbatan "o'qish va yozish” tartibi o'matiladi. “Faqat o'qish” tartibi doiino saqlanadigan bazaviy ma’lumotlarga qo'llaniladi.
Har bir SQL tranzaksiyasi himoyalanish darajasiga ega: READ UNCOMMITTED, READCOMMITTED, REPEATABLEREAD yoki SERIALIZABLE. SQL tranzaksiyasi himoyalanish darajalari bajarilayotgan tranzaksiyaning boshqa parallel bajarilayotgan tranzaksiyalarga ta’sir etish darajasini aniqlaydi. Tranzaksiyaning aniq darajasini o'matish uchun SETTRANSACTION operatoridan 89 foydalanishadi. Kutish qoidasiga nisbatan SERIALIZABLE tartibi o‘matiladi. Himoyalanish darajalari tranzaksiyalaming parallel bajarilishida yuz berishi mumkin boigan hodisalami aniqlaydi. Quyidagi ko‘rinishdagi hodisalar bo’lishi mumkin:
PI (“Dirtyread" - "Yomon o‘qish"): T1 tranzaksiya qatorni
yaratadi. Keyin T2 tranzaksiya T1 COMMIT amalini bajarmasdan
bu qatorni o‘qiydi. Shundan so‘ng T1 ROLLBACK amalini
bajarsa, T2 tranzaksiya umuman mavjud boim agan qatomi o'qigan
boiib chiqadi.
> P2 (“Non-repeaiableread" - “Takrorlanmaydigan o'qish”): T1
tranzaksiya qatomi o‘qiydi. Shundan so‘ng T2 tranzaksiya bu
buyruqlar qatorini o'zgartiradi yoki olib tashlaydi va COMMITni
bajaradi. Shimdan so‘ng T1 shu qatomi yana o‘qishga harakat
qiladi, ammo bu qator birinchi holatdagi qator emas yoki olib
tashlangani uchun topolmaydi.
> P3 ("Phantom" - "Fantom"): T1 tranzaksiya biror-bir shartni
qanoatlantiradigan N qatomi o‘qiydi. Shundan soiig T2
tranzaksiya bu qatorlar ichidan bir yoki bir nechta qator shartlarini
generatsiya qiladi. Agar shu ishlardan keyin T1 o‘qishni qaytarsa, u
butunlay boshqa qatorlarga ega bo’ladi

Download 72,25 Kb.
1   2   3   4




Download 72,25 Kb.