Soran
C# SQ incorrect syntax hataları

Soru
-
public void kayittarihekle() { try { baglanti = new SqlConnection(@"Data Source =.\SQLEXPRESS; Initial Catalog = Oteltakip2; Integrated Security = True"); baglanti.Open(); cmd = new SqlCommand("insert into tableOtelTakipTarih values @musteriid, @gelentarih, @gidentarih",baglanti); cmd.Parameters.Add("@musteriid", textBox1.Text); cmd.Parameters.Add("@gelentarih", dateTimePicker1.Value); cmd.Parameters.Add("@gidentarih", dateTimePicker2.Value); cmd.ExecuteNonQuery(); } catch(Exception ex) { MessageBox.Show("(DTP)SQL Query Error:", ex.Message); } finally { baglanti.Close(); } } public void kayitekle() { try { baglanti = new SqlConnection(@"Data Source =.\SQLEXPRESS; Initial Catalog = Oteltakip2; Integrated Security = True"); baglanti.Open(); string ekle; ekle = "insert into tableOtelTakipTarih" + "values ('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "')"; SqlCommand cmd = new SqlCommand(ekle, baglanti); cmd.ExecuteNonQuery(); MessageBox.Show("Kayıt ekleme işlemi başarılı!", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch(Exception ex) { MessageBox.Show("(TXİLK3)SQL Query error:", ex.Message); } finally { baglanti.Close(); }
Kodlarım bu şekilde 2 ayrı try catch finally kullandımi ikiside aynı hatayı veriyor hatalar şöyle: Parametre olanda incorrect syntax near ')'
Parametre olmayanda incorrect syntax near '@musteriid'
- Düzenleyen Ahmet Efe KORKMAZ 3 Kasım 2022 Perşembe 16:43
Tüm Yanıtlar
-
cmd = new SqlCommand("insert into tableOtelTakipTarih values (@musteriid, @gelentarih, @gidentarih)",baglanti); ekle = "insert into tableOtelTakipTarih" + " values ('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "')";
Şeklinde düzeltip denermisin -
Hayır, sen kendi kodlarını yukarıdaki gibi parametreli kullanıma çevirmelisin.
Sql syntaxını gözden geçirin;insert into tabloAdı (kolon1) values (@kolon1);
Using blokları içerisinde kullanın;
using (var sqlconnection = new SqlConnection("bağlantı cümlesi")) { using (var command = sqlconnection.CreateCommand()) { command.CommandType = CommandType.Text; command.CommandText = "sql query"; command.Parameters.Add("@P1", SqlDbType.NVarChar).Value = "";// type parametreue uygun olacak şekilde. sqlconnection.Open(); command.ExecuteNonQuery(); } }
Altan Özdemir
- Düzenleyen Altan Özdemir 7 Kasım 2022 Pazartesi 08:34
-
Yararlı olabilecek bazı linkler: