Sobes.tech
Junior

Verilənlər bazasında əməliyyatlar niyə istifadə olunur?

sobes.tech Süni İntellekt

AI-dan cavab

Müqavilələr verilənlər bazası əməliyyatlarının atomiklik, uyğunluq, izolasiya və davamlılıq (ACID) prinsiplərini təmin edir.

  • Atomiklik: Bir əməliyyatdakı bütün əməliyyatlar tamamilə yerinə yetirilir və ya heç yerinə yetirilmir. Əgər bir əməliyyat uğursuz olarsa, hamısı geri alınır.
  • Uyğunluq: Müqavilə verilənlər bazasını bir uyğun vəziyyətdən digərinə keçirir. Məhdudiyyətlərin pozulması (məsələn, unikal açarlar) qarşısı alınır.
  • İzolasiya: Hər bir müqavilə sistemdə tək başına yerinə yetirilirmiş kimi icra olunur. Bir müqavilənin etdiyi dəyişikliklər digərinə görünmür, onun tamamlanmasına qədər.
  • Davamlılıq: Müvəffəqiyyətlə tamamlanan müqavilədən sonra onun dəyişiklikləri yadda saxlanır və sistemdəki nasazlıq halında belə itmir.

Müqavilələr məlumatların bütövlüyünü təmin etmək üçün vacibdir, xüsusən də bir neçə əlaqəli əməliyyatın birlikdə və ya ümumiyyətlə yerinə yetirilməli olduğu zaman. Məsələn, əmanət hesabından cari hesaba pul köçürmə.

-- Müqavilənin başlanması
START TRANSACTION;

-- Birinci hesaba çıxma
UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;

-- Əvvəlki əməliyyat uğurlu olarsa, ikinci hesaba əlavə et
UPDATE accounts SET balance = balance + 100 WHERE account_id = 2;

-- Hər iki əməliyyatın uğurlu olub-olmadığını və səhv olmadığını yoxlamaq
-- IF səhv şərti THEN
--   ROLLBACK; -- Bütün dəyişiklikləri geri al
-- ELSE
--   COMMIT; -- Bütün dəyişiklikləri təsdiqlə
-- END IF;

-- Nümunə üçün, hər iki əmrin uğurla tamamlandığını qəbul edirik
COMMIT; -- Müqaviləni təsdiqlə
-- ROLLBACK; -- Səhv olarsa, müqaviləni geri al