16.6. Tranzaksiyalar
Bitta tranzaksiya doirasida ma'lumotlar bazasiga kiritilgan barcha o'zgarishlar tugallanishi yoki umuman bajarilmasligi bilan farqlanadi. Ma'lumotlar bazasiga har bir o'zgartirish tranzaksiya doirasida amalga oshirilishiga qaramay, .NET da ularni aniq ko'rsatgan ma'qul. Agar tranzaksiya ichidagi so'rovlarni bajarishda xatolik yuzaga kelsa, tranzaktsiyaga kiritilgan barcha o'zgarishlar orqaga qaytariladi.
OleDbTransaction klassi tranzaktsiya uchun javobgardir. Ushbu sinfda biz uchun foydali bo'lishi mumkin bo'lgan quyidagi usullar mavjud:
Begin() — tranzaktsiyani boshlash;
Commit() — tranzaktsiya ichida kiritilgan o'zgarishlarni saqlang;
Rollback() — o'zgarishlarni bekor qilish, ya'ni tranzaksiyani orqaga qaytarish.
Keling, tranzaktsiyalardan foydalanishni haqiqiy misol bilan ko'rib chiqaylik. Listing 16.1 da tranzaksiyadagi dastur jadvalga ma'lumotlarni qo'shish uchun so'rovni bajarishga harakat qiladi, lekin o'zgarishlar saqlanmaydi, chunki tranzaksiya oxirida qaytariladi.
Do'stlaringiz bilan baham: |