Middle+
SELECT FOR UPDATE nə üçün istifadə olunur?
sobes.tech Süni İntellekt
AI-dan cavab
SQL-də SELECT FOR UPDATE seçilmiş sətirləri tranzaksiya müddətində bloklamaq üçün istifadə olunur. Bu, digər tranzaksiyaların bu sətirləri eyni zamanda dəyişdirməsini qarşısını alır və məlumatların bütövlüyünü təmin edir.
Məsələn, Go ilə verilənlər bazası ilə işləyirsinizsə və qeydiyyatı yeniləmək istəyirsinizsə, əvvəlcə aşağıdakı əmri yerinə yetirə bilərsiniz:
SELECT * FROM accounts WHERE id = 123 FOR UPDATE;
Bu, sizin tranzaksiya bitənə qədər digər tranzaksiyaların bu sətirləri dəyişdirə və ya bloklaya bilməməsini təmin edir.
Go-da, database/sql istifadə edərək, bu belə görünə bilər:
tx, err := db.Begin()
if err != nil {
// xəta emalı
}
row := tx.QueryRow("SELECT balance FROM accounts WHERE id = ? FOR UPDATE", 123)
// nəticənin emalı
// məlumatların yenilənməsi
err = tx.Commit()