3. Tranzaksiya xususiyatlari. Tranzaksiyani yakunlash usullari Har xil xususiyatlarga ko'ra tasniflanishi mumkin bo'lgan turli xil operatsiyalar modellari mavjud, shu jumladan tranzaksiya tuzilishi, tranzaksiya ichidagi parallellik, davomiylik va boshqalar.
Hozirgi vaqtda operatsiyalarning quyidagi turlari ajratiladi: yassi yoki klassik operatsiyalar, zanjirli operatsiyalar va ichki o'zaro operatsiyalar.
Yassi operatsiyalar atomiklik, mustahkamlik, izolyatsiya va chidamlilikning klassik xususiyatlari bilan tavsiflanadi.
· Atomlik xususiyati bitimning yaxlit bajarilishi yoki umuman bajarilmasligida ifodalanadi.
· Muvaffaqiyatlilik xususiyati tranzaktsiya davom etayotganda ma'lumotlarning bir izchil holatdan boshqa izchil holatga o'tishini ta'minlaydi - tranzaksiya ma'lumotlarning o'zaro izchilligini buzmaydi.
· Izolyatsiya xususiyati ma'lumotlar bazasiga kirish uchun raqobatlashayotgan tranzaktsiyalar jismoniy jihatdan ketma-ket, bir-biridan ajratilgan holda qayta ishlanishini anglatadi, lekin foydalanuvchilarga ular parallel ravishda bajarilayotgandek ko'rinadi.
· Uzoq umr ko'rish xususiyati shuni anglatadiki, agar tranzaksiya muvaffaqiyatli yakunlangan bo'lsa, unda kiritilgan ma'lumotlar o'zgarishlari hech qanday sharoitda, hatto keyingi xatolar bo'lsa ham yo'qolmaydi.
Tranzaktsiyani bajarish uchun ikkita variant mavjud:
· agar barcha bayonotlar muvaffaqiyatli bo'lsa va tranzaksiya davomida apparat yoki dasturiy ta'minotda nosozliklar ro'y bermasa, tranzaktsiya amalga oshiriladi. (Majburiyat - bu tranzaktsiyani bajarish paytida kiritilgan ma'lumotlar bazasidagi o'zgarishlarni diskka yozish). Agar tranzaktsiya amalga oshirilmasa, bu o'zgarishlar orqaga qaytarilishi va ma'lumotlar bazasi tranzaksiya boshlangan paytdagi holatga qaytarilishi mumkin. Tranzaksiyani amalga oshirish bitimning barcha natijalari doimiy bo'lishini anglatadi. Ular joriy tranzaksiya amalga oshirilgandan keyingina boshqa tranzaktsiyalarga ko'rinadi.
· Agar tranzaktsiyani bajarishda nosozlik yuzaga kelsa, ma'lumotlar bazasini asl holatiga qaytarish kerak. Tranzaksiyani qaytarish - bu SQL bayonotlari orqali kiritilgan barcha ma'lumotlar o'zgarishlarini joriy kutilayotgan tranzaktsiyaning tanasiga qaytaradigan harakat.