Excel Formül
Modül 8: Veritabanı ve Dış Sistem Entegrasyonları

VBA ve SQL ile Veritabanı Kayıt Güncelleme (UPDATE)

Veritabanına yeni kayıt eklemek kadar, mevcut bir kayıttaki bilgileri değiştirmek de (örneğin müşteri unvanını düzeltmek veya bakiyeyi güncellemek) kritik bir operasyondur. Excel formları üzerinden yapılan revizyonları SQL veritabanına yansıtmak için UPDATE komutu kullanılır.

SQL UPDATE sorgusu yazarken en önemli kural WHERE koşuludur. Koşul belirtilmeden çalıştırılan bir güncelleme sorgusu tablodaki **tüm satırları** değiştirerek felç edebilir. Bu nedenle VBA tarafında ID veya benzersiz anahtar üzerinden filtreleme yapılır.

UPDATE Komutu ile Veri Revize Etme Yapısı

SET ifadesi ile hangi kolonun hangi yeni değerle değiştirileceği belirtilir, WHERE ile de hangi kaydın güncelleneceği seçilir.

SQL Veri Güncelleme Kod Kalıbı

Dim baglanti As Object
Dim sqlSorgu As String

Set baglanti = CreateObject("ADODB.Connection")
baglanti.Open "Provider=SQLOLEDB;Data Source=SUNUCU_IP;Initial Catalog=MusteriDB;User ID=admin;Password=123;"

' Belirli ID'ye sahip kaydı güncelle
sqlSorgu = "UPDATE Musteriler SET Unvan = 'Yeni Ünvan A.Ş.', Bakiye = 1500 WHERE ID = 10"`
baglanti.Execute sqlSorgu

baglanti.Close

Canlı Simülatör: SQL Kayıt Güncelleme (UPDATE)

Aşağıdaki simülasyon, Excel'den gelen revize bilgiyi SQL veritabanındaki ilgili ID'ye işleme sürecini canlandıracaktır. SQL Kaydını Güncelle butonuna basın.

Visual Basic Editörü
Module1 (Update_Record)
Sub KaydiGuncelle()
    Dim conn As Object, sql As String
    Set conn = CreateObject("ADODB.Connection")

    conn.Open "...Data Source=SERVER_DB..."

    ' Güncelleme Sorgusu
    sql = "UPDATE Personel SET Departman = 'Bilgi İşlem' WHERE ID = 5"
    conn.Execute sql

    MsgBox "Veritabanı kaydı başarıyla güncellendi!", vbInformation
End Sub
Canlı Veri Tablosu Görünümü
A2
ID
Personel Adı
Departman (Güncel)
2
5
Mehmet Demir
Muhasebe (Eski)
Microsoft Excel ✕
Veritabanı kaydı başarıyla güncellendi!