IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Problème de réponse SQL


Sujet :

ASP.NET

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Problème de réponse SQL
    Bonjour,

    J'ai un site en ASP et C#. Sur ce site a un moment je fais une recherche pour mon annuaire. Mon problème est le suivant, lorsque je lance ma requête sous mon phpmyadmin la requête me retourne les bonnes réponses en bon nombre. Mais lorsque j'intègre ma requête à mon programme coté C# la c'est le drame elle me dit qu'il y a 0 réponse et du coups pas d'affichage tant que j'ai pas mis une valeur correct dans chaque paramètre de la recherche (toujours sous mon site)....

    Ma requête et son liens avec ma GridView
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    string strReq = "Select DISTINCT Nom, Prenom, Clinique, Service, Fonction from Annuaire_Commun WHERE Nom LIKE '"
                            + Recherche_Nom 
                            + "' AND Prenom LIKE '" 
                            + Recherche_Prenom 
                            + "' AND Clinique LIKE \"" 
                            + Recherche_Clinique
                            + "\" AND Service LIKE \""
                            + Recherche_Service + "\"";
            OleDbDataReader dr = cf.GetAReader(strReq);
            Affiche_Annuaire.DataSource = dr;
            Affiche_Annuaire.DataBind();
            dr.Close();
    et mon exécution de requête par la suite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
            public OleDbDataReader GetAReader(String strRequete)
            {
               OleDbCommand req = GetACommand(strRequete);
               return req.ExecuteReader();
            }
            public OleDbCommand GetACommand(String strRequete)
            {
               OpenConnection();
               OleDbCommand req =Instance().GetAConnection().CreateCommand();
               req.CommandText = strRequete;
               return req;
            }
    Si vous avez des idées je suis pour car cela fait près de 1 semaine que je me prend la tête dessus

    Merci d'avance

  2. #2
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    J'ai trouvé. Au lieux de vouloir passé la requête complète je l'ai décomposé et la crée en fonction des champs remplie par l'utilisateur. Ça fait un peu usine a gaz mais pour le moment ça marche.

    Si vous avez de meilleur idée pour optimiser ça je suis preneur.

  3. #3
    Membre averti
    Profil pro
    azeazeae
    Inscrit en
    Septembre 2002
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : azeazeae

    Informations forums :
    Inscription : Septembre 2002
    Messages : 114
    Points : 305
    Points
    305
    Par défaut
    Tu n aurais pas oublie le * dans ta requete?
    De plus tu utilises " pour encadrer une chaine de caractere (les 2 derniers champ) je pense qu il vaut mieux utiliser ' (comme dans le 1er)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    string strReq = "Select DISTINCT Nom, Prenom, Clinique, Service, Fonction from Annuaire_Commun WHERE Nom LIKE '*"
                            + Recherche_Nom 
                            + "*' AND Prenom LIKE '*" 
                            + Recherche_Prenom 
                            + "*' AND Clinique LIKE '*" 
                            + Recherche_Clinique
                            + "*' AND Service LIKE '*"
                            + Recherche_Service + "*'";

  4. #4
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    Peut etre que le problème viendrait des quotes...

    une fois tu utlises " et une fois '

    de plus avec like tu dois utiliser un caractère joker, non?

  5. #5
    Membre du Club Avatar de Yodabis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 55
    Points : 58
    Points
    58
    Par défaut
    Moi déjà j'utiliserais une requête paramétrée.
    Tu peux pas être sur que tu n'auras pas d'apostrophe dans tes variables.

    Et si c'est pour un site web ca t'éviteras d'avoir des blagues style SQL injection.

Discussions similaires

  1. Problème temps de réponse SQL Server CE
    Par Dark Christou dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 31/12/2009, 13h28
  2. [Interbase] Problème de syntaxe SQL
    Par navis84 dans le forum InterBase
    Réponses: 4
    Dernier message: 22/12/2004, 17h07
  3. Problème de requète SQL dans un Requery
    Par Keraccess dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 22/10/2004, 14h58
  4. Problème Access to Sql Server
    Par vuldos dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/08/2004, 15h56
  5. Réponses: 3
    Dernier message: 18/11/2002, 16h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo