Senior
Hansı növ əməliyyatları bilirsiniz? Onlar nə üçün lazımdır?
sobes.tech Süni İntellekt
AI-dan cavab
Go-da əməliyyatlar adətən verilənlər bazaları ilə əlaqəlidir və atomiklik, uyğunluq, izolasiya və davamlılıq (ACID) təmin etmək üçün istifadə olunur.
Əməliyyatların növləri:
- Avtomatik əməliyyatlar — hər bir əməliyyat ayrı bir əməliyyat kimi həyata keçirilir.
- Açıq əməliyyatlar — proqramçı
Begin(),Commit(),Rollback()metodları ilə əməliyyatı açıq şəkildə başlatır, təsdiqləyir və ya ləğv edir. - Uzunmüddətli əməliyyatlar — paylanmış sistemlərdə istifadə olunur, burada əməliyyat uzun çəkə bilər və koordinasiya tələb edir.
Əməliyyatların məqsədi:
- Bir qrup əməliyyatın tam həyata keçirilməsini və ya heç həyata keçirilməməsini təmin edir.
- Yarış şərtlərini qarşısını alır və məlumatların bütövlüyünü təmin edir.
- Xətalar baş verdikdə dəyişiklikləri geri almağa imkan verir.
Go-da verilənlər bazası ilə əməliyyat nümunəsi:
tx, err := db.Begin()
if err != nil {
log.Fatal(err)
}
_, err = tx.Exec("INSERT INTO users(name) VALUES(?)", "Alice")
if err != nil {
tx.Rollback()
log.Fatal(err)
}
err = tx.Commit()
if err != nil {
log.Fatal(err)
}