none
C# SQ incorrect syntax hataları RRS feed

  • 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'



    3 Kasım 2022 Perşembe 16:34

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
    3 Kasım 2022 Perşembe 18:50
  • 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


    7 Kasım 2022 Pazartesi 08:31
  • Yararlı olabilecek bazı linkler:

    syntax errors ve tool

    30 Kasım 2022 Çarşamba 09:35
    Moderatör