Sobes.tech
Junior — Middle

Əlaqəli verilənlər bazalarında məlumatların uyğunluğunu təmin etmək üçün hansı metodlar istifadə olunur?

sobes.tech Süni İntellekt

AI-dan cavab

Əlaqəli verilənlər bazalarında məlumatların ardıcıllığını təmin etmək üçün aşağıdakı metodlar tətbiq olunur:

  1. Əməliyyatlar (Transaksiyalar) — bir sıra əməliyyatları bir vahid kimi yerinə yetirməyə imkan verir. Əgər bir əməliyyat uğursuz olarsa, bütün dəyişikliklər geri alınır və məlumatların bütövlüyü təmin edilir.

  2. ACID prinsipləri:

    • Atomiklik — bir əməliyyat daxilindəki bütün addımlar ya tamamilə yerinə yetirilir, ya da heç yerinə yetirilmir.
    • Uyğunluq — verilənlər bazası düzgün vəziyyətdən digər düzgün vəziyyətə keçir.
    • İzolyasiya — paralel əməliyyatlar bir-birinə təsir etmir.
    • Davamlılıq — əməliyyat təsdiqləndikdən sonra, dəyişikliklər nasazlıqlara baxmayaraq saxlanılır.
  3. İnteqrasiya məhdudiyyətləri: əsas açarlar, xarici açarlar, unikal məhdudiyyətlər, yoxlamalar (CHECK), yanlış məlumatların daxil olmasının qarşısını alır.

  4. Qapamalar və izolyasiya səviyyələri — eyni vaxtda girişləri idarə edir, münaqişələri qarşısını alır və ardıcıllığı təmin edir.

Go dilində tranzaksiya ilə nümunə:

trx, err := db.Begin()
if err != nil {
    // xəta ilə işləmə
}
_, err = trx.Exec("UPDATE accounts SET balance = balance - 100 WHERE id = ?", fromID)
if err != nil {
    trx.Rollback()
    // xəta ilə işləmə
}
_, err = trx.Exec("UPDATE accounts SET balance = balance + 100 WHERE id = ?", toID)
if err != nil {
    trx.Rollback()
    // xəta ilə işləmə
}
err = trx.Commit()
if err != nil {
    // xəta ilə işləmə
}

Bu nümunədə, hesablar arasında pul köçürməsi tək bir tranzaksiya daxilində həyata keçirilir və məlumatların ardıcıllığı təmin edilir.