C# sözdizimi hatası

Maslyon41

Decapat
Katılım
18 Şubat 2019
Mesajlar
9
Yer
Kocaeli
Daha fazla  
Cinsiyet
Erkek
Meslek
Programcı
Merhaba arkadaşlar. Hazırladığım veri tabanı ve yazdığım kodlar aşağıdaki gibidir. Sözdizimi hatası alıyorum. Bilgisi olanlar, bana yardım edebilir mi?

C#:
private void btnEKLE_Click(object sender, EventArgs e)
{
baglanti.Open();
string sorgu = "INSERT INTO Eleman (Ad,Soyad,Telefon,Not,Borc) VALUES ('@ad','@soyad','@telefon','@not','@borc')";
komut = new OleDbCommand(sorgu, baglanti);
komut.Parameters.Add("@ad", OleDbType.VarWChar).Value = textAd.Text;
komut.Parameters.Add("@soyad", OleDbType.VarWChar).Value = textSoyad.Text;
komut.Parameters.Add("@telefon", OleDbType.VarWChar).Value = textTelNO.Text;
komut.Parameters.Add("@not", OleDbType.VarWChar).Value = textNot.Text;
komut.Parameters.Add("@borc",OleDbType.Integer).Value = Convert.ToInt32(textBorç.Text);
komut.ExecuteNonQuery();
baglanti.Close();
KisiListele();

}

technopat db.png


techopat code hata.png
 
Son düzenleyen: Moderatör:
Daha önce hiç c# yazmadım ama textBorç değişkeninde türkçe karakter kullanmışsın onu düzeltince hata vermez büyük ihtimalle.
 
Debug modunda kullanmana gerek yok. Aynı şekilde Türkçe kullanmana da gerek yok çünkü Türkçesinden hiçbir şey anlaşılmıyor.
Ben dediğim şekilde kullanıyorum ve hata alınca bana diyor ki şu satırda şu hata var. Sana ise şu hata var demiş gördüğüm kadarıyla.
Türkçe yapman şart değil ama Debug modundan çıkarıp tekrar dener misin? Aldığın hatada satır numarası da yazacaktır diye umuyorum.
 
Debug modunda kullanmana gerek yok. Aynı şekilde Türkçe kullanmana da gerek yok çünkü Türkçesinden hiçbir şey anlaşılmıyor.
Ben dediğim şekilde kullanıyorum ve hata alınca bana diyor ki şu satırda şu hata var. Sana ise şu hata var demiş gördüğüm kadarıyla.
Türkçe yapman şart değil ama Debug modundan çıkarıp tekrar dener misin? Aldığın hatada satır numarası da yazacaktır diye umuyorum.
tecno11.png


Hocam, İngilizce diline aldım fakat yine Türkçe hata veriyor.
 
string sorgu = "INSERT INTO Eleman (Ad,Soyad,Telefon,Not,Borc) VALUES ('@ad','@soyad','@telefon','@not','@borc')";
Burada tek tırnakları kaldırmalısın.
string sorgu = "INSERT INTO Eleman (Ad,Soyad,Telefon,Not,Borc) VALUES (@ad,@soyad,@telefon,@not,@borc)";
Zaten parametre olarak veriyorsun, veri tipine göre kendisi düzenleyecektir.
Deneyip sonuç bildirir misin?
 
string sorgu = "INSERT INTO Eleman (Ad,Soyad,Telefon,Not,Borc) VALUES ('@ad','@soyad','@telefon','@not','@borc')";
Burada tek tırnakları kaldırmalısın.
string sorgu = "INSERT INTO Eleman (Ad,Soyad,Telefon,Not,Borc) VALUES (@ad,@soyad,@telefon,@not,@borc)";
Zaten parametre olarak veriyorsun, veri tipine göre kendisi düzenleyecektir.
Deneyip sonuç bildirir misin?
Biraz geç denedim fakat tırnakları kaldırmak sonuç vermedi.
Arkadaşlar bendeki sorunu çözdüm. Sorunun sebebi telno ve ID gibi Microsoft acces veri tabanına özel kendi kodlarının benim koyduğum isimlerle çakışmasıymış. Telno'nun adını telefon ve ID'nin adını da numara yaptım. Bu konu için yardımcı olmaya çalışan herkese teşekkür ederim.
 
Son düzenleme:

Yeni konular

Geri
Yukarı