tablo da kolon adını string değişken olarak kabul ettiremiyorum ??

Başlatan forumsad, 13 Kasım 2012, 16:18:27

forumsad

OleDbConnection conUpdate = system.baglanAccess();
            OleDbCommand conCom = new OleDbCommand("update tblAnaMevcut set '"+YakitCinsi+"'=@yeniDeger  where Id=1 ", conUpdate);
            conCom.Parameters.AddWithValue("@yeniDeger", YakitMiktari.ToString());
            conCom.ExecuteNonQuery();
            conUpdate.Close();

yukardaki kodda yakitCinsi string değişkenini kaldırıp kolon adını direkt yazdığımda çalışıyor
ama değişkenden almak istediğimde hata veriyor neden olabilir acaba

teşekkürler

fatih6761

Kdoun devamını da verebilir misiniz ? Belki değişkenee doğru string verisi atılmıyordur. Veya veri doğru formatta olmayabilir. YakitCinsi yerine çalışma zamanında hangi değerler gelebilecek? Bunları yazmamışsınız...

forumsad

adım adım kontrol ettiğimde değer alıyor

string YakitCinsi = cbYakitCins.Text;   yakıt cinsi comboboxdan geliyor

forumsad

OleDbCommand conCom = new OleDbCommand("update tblAnaMevcut set " + cins + "=@yeniDeger  where Id=1 ", conUpdate);


'' TIRNAKLAR OLMAYACAKMIŞ   DÜZELDİ


TEŞEKKÜRLER

AlexanderII

Merhaba, sorunu çözmüşsünüz zaten, ama yinede belirtmek istedim. Tırnaklar yalnızca parametre kullanmadığınız zamanlarda query içerisindeki string ve  tarih alanları için kullanılır. Alan adı, tablo adı veritabanı için bir obje olduğundan dolayı tırnak kullanımı hata ile sonuçlanır.
sprintf(sQueryCommand, "UPDATE table SET column = '%s'",[myStringVariable])