Reja 1.SQL muhitida tranzaksiya tushunchasi. 2.SQL muhitida tranzaksiyalani boshqarish. 3.Arifmetik jarayonlar. 4.Hisoblash tartibini belgilash. 5.Triggerlar va ulardan foydalanish.
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 yori 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 SETTTRANSACTION operatori yordamida o'rnatiladi. Jimlik qoidagisa nusbatan ''o'qish va yozish" tartibi o'rnatiladi. "Faqat o'qish" tartibi doimo saqlanadigan bazaviy ma'lumotlarga qo'llaniladi.
Har bir SQL tranzaksiyasi himoyalanish darajasiga ega: READUNCOMMITTED, READCOMMITTED, REPEATABLEREAD yoki SERIALIZABLE. SQL tranzaksiyasi himoyalanish darajalari bajarilayotgan tranzaksiyaning boshqa parallel bajarilayotgan tranzaksiyalarga ta'sir etish daragasini aniqlaydi. Tranzaksiyaning aniq darajasini o'rnatish uchun SETTRANSACTION operatoridan foydalanishadi. Jimlik qoidasiga nisbatan SERIALIZABLE tartibi o'rnatiladi.
Himoyalanish daragalari tranzaksiyalarning parallel bajarilishida yuz berishi mumkin bo'lgan hodisalami aniqlaydi. Qyuidagi ko'rinishda gi hodisalar bo'lishi mumkin: > PI ("Dirtyread" - "Yomon o'qish"): T1 tranzaksiya qatomi yaratadi. Keyin T2 tranzaksiya T1 COMMIT amalini bajarmasdan bu qatomi o'qiyi. Shundan so'ng T1 ROLLBACK amalini bajarsa, T2 tranzaksiya umuman mavjid bo'lmagan qatomi o'qigan bo'lib chiqadi.
> РЗ ("Phantom" - "Fantom"): T1 tranzaksiya biror-bir shartni qanoatlantiradigan N qatomi o'qiydi. Shundan so'ng 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,