Requete Like [Résolu]

Messages postés
346
Date d'inscription
jeudi 15 février 2007
Statut
Membre
Dernière intervention
24 avril 2010
- - Dernière réponse : Arthenius
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
- 21 févr. 2008 à 15:01
   Bonjour, je souhaite savoir comment faire une requête paramétré en utilisant la clause like.
Voila mon code je l'ai essayé mais ca ne marche pas :

strConnection = System.Configuration.ConfigurationManager.ConnectionStrings["NSConnectionString"].ConnectionString;
        cn = new SqlConnection(strConnection);

        try
        {

            cn.Open();

            string requete = "select * from PROFILE where profile_shortname Like @Profile_Shortname";
            // Ici Je veux faire Like'%@Profile_Shortname%'
            SqlCommand cm = new SqlCommand(requete, cn);
           

            SqlParameter parm1 = cm.Parameters.Add("@Profile_Shortname", SqlDbType.VarChar, 50);

            parm1.Value =  Profile_Shortname_TextBox.Text.ToString();
         
           
            SqlDataAdapter Profiles_search_DataAdapter = new SqlDataAdapter(cm);

            DataTable Profiles_search_DataTable = new DataTable("PROFILE");

            Profiles_search_DataAdapter.Fill(Profiles_search_DataTable);

            int dataTableRowCount = Profiles_search_DataTable.Rows.Count;

            Response.Write("NBR= " + dataTableRowCount);

            if (dataTableRowCount > 0)
            {

                Profile_Search_GridView.DataSource = Profiles_search_DataTable;
                Profile_Search_GridView.DataBind();

            }
        }
        catch (Exception E)
        {
            Profile_Label.Text = E.Message.ToString();
        }

        finally
        {

            cn.Close();
            cn.Dispose();
            Profile_Search_GridView.DataBind();
        }
        

Merci
Afficher la suite 

6 réponses

Meilleure réponse
Messages postés
1025
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
47
3
Merci
Et ta requête est bien :

"select * from PROFILE where profile_shortname Like @Profile_Shortname" ?

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 131 internautes nous ont dit merci ce mois-ci

Commenter la réponse de SharpMao
Messages postés
346
Date d'inscription
jeudi 15 février 2007
Statut
Membre
Dernière intervention
24 avril 2010
3
Merci
    Oui et quand j'ai mis le code que vous m'avez donnée, je n'ai plus de résultat même si je donne quelque chose qui existe.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 131 internautes nous ont dit merci ce mois-ci

Commenter la réponse de mimosa803
Messages postés
1025
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
47
3
Merci
Re-hello,


Je viens de créer une table chez moi pour essayer, j'ai copier-coller ton code, en changeant juste ça :









string
requete =

"select * from PROFILE where profile_shortname Like @Profile_Shortname"

;


// Ici Je veux faire Like'%@Profile_Shortname%'

SqlCommand
cm =

new



SqlCommand


(requete, cn);


SqlParameter
parm1 = cm.Parameters.Add(

"@Profile_Shortname"
,

SqlDbType


.VarChar, 50);
parm1.Value =
String.Format(
"%{0}%",
"asd");





Et chez moi, ça fonctionne ( dataTableRowCount
>0)

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 131 internautes nous ont dit merci ce mois-ci

Commenter la réponse de SharpMao
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
11
3
Merci
pas mieux que sharpmao : parm1.Value =  "%" + Profile_Shortname_TextBox.Text.ToString() + "%";

<hr />Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 131 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Arthenius
Messages postés
1025
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
47
0
Merci
Salut à toi,

Essaie comme ça :

parm1.Value =  String.Format("%{0}%",Profile_Shortname_TextBox.Text);

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)
Commenter la réponse de SharpMao
Messages postés
346
Date d'inscription
jeudi 15 février 2007
Statut
Membre
Dernière intervention
24 avril 2010
0
Merci
    Bonjour, Merci pour votre réponse, j'ai essayé mais aucun résultat
Commenter la réponse de mimosa803