Partage
  • Partager sur Facebook
  • Partager sur Twitter

Erreur incorrect syntax near

Sujet résolu
    19 septembre 2021 à 14:46:24

    Bonjour, je suis entrais de créer une filtre avec un combo box et le buttons affichage. Quand s’exécute le voilà le message d'erreur

    Erreur incorrect syntax near

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using System.Data.SqlClient;
    
    namespace KELASI.PL
    {
        public partial class FRM_ListeReglemenEtudiant : Form
        {
    
            public SqlConnection con = new SqlConnection();
            public SqlCommand com = new SqlCommand();
            public DataSet ds = new DataSet();
            public SqlDataAdapter da = new SqlDataAdapter();
            public SqlDataReader dr;
    
    
            // fonction connecter 
            public void connecter()
            {
                if (con.State == ConnectionState.Closed)
                {
                    con.ConnectionString = "Data Source=DESKTOP-F1HOKVA\\SQLSERVER;Initial Catalog=GestionScool;Integrated Security=True";
                    con.Open();
                }
            }
    
            //fonction déconnecter
            public void déconnecter()
            {
                if (con.State == ConnectionState.Closed)
                {
                    con.Close();
                }
            }
    
    
            public FRM_ListeReglemenEtudiant()
            {
                InitializeComponent();
           
            }
    
            private void BtnFermer_Click(object sender, EventArgs e)
            {
                this.Close();
            }
    
            private void FRM_ListeReglemenEtudiant_Load(object sender, EventArgs e)
            {
                connecter();
    
                com.CommandText = "SELECT codeOption FROM inscrire";
                com.Connection = con;
              
                dr = com.ExecuteReader();
                while(dr.Read())
                {
                    CmbOption.Items.Add(dr["codeOption"]);
    
                }
                con.Close();
            }
    
            private void dtgReinscription_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e)
            {
                Close();
            }
    
            private void BtnAfficher_Click(object sender, EventArgs e)
            {
                connecter();
                com.CommandText = "SELECT * FROM inscrire WHERE codeOption '" + CmbOption.Text + "'";
    
                try
                {
                    com.Connection = con;
                    dr = com.ExecuteReader();
                    DtgReglement.Rows.Clear();
    
                    while (dr.Read())
                    {
                        DtgReglement.Rows.Add(dr.GetValue(0), dr.GetValue(5), dr.GetValue(8), dr.GetValue(3), dr.GetValue(4), dr.GetValue(1), dr.GetValue(6), dr.GetValue(7), dr.GetValue(2));
                    }
                    con.Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Erreur :" + ex.Message);
                    con.Close();
                }
    
                déconnecter();
            }
        }
    }
    

    -
    Edité par André Parfait 19 septembre 2021 à 14:48:28

    • Partager sur Facebook
    • Partager sur Twitter
      20 septembre 2021 à 12:49:25

      erreur ligne 79 je suppose ? c'est une erreur SQL,  il manque quelque chose entre codeOption et la valeur derrière selon ta condition (sans doute un LIKE ou un = )

      -
      Edité par umfred 20 septembre 2021 à 12:49:46

      • Partager sur Facebook
      • Partager sur Twitter
        20 septembre 2021 à 19:50:51

        Et pensez à faire des requêtes préparées, si l'utilisation d'un ORM est contre votre religion, ça vous protégera des attaques par SQL Injection mais aussi des "fausses manips" de vos utilisateurs.
        • Partager sur Facebook
        • Partager sur Twitter
        Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.

        Erreur incorrect syntax near

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        • Editeur
        • Markdown