Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Requete 'like' [ Base de données / SQL Server ] (scortex84)

mardi 30 janvier 2007 à 16:50:23 | Requete 'like'

scortex84

Bonjour,

Dans visual studio 2005, il est possible de créer des datasets typés et d'ajouter en quelques clics des requetes sql du type "selectionne moi tous les clients qui habitent Avignon"

Ca marche nickel. Là j'essaye de faire la même chose avec un like, et j'obtiens n'importe quoi. Ma requete :

SELECT cp, departement, id_unique, insee, nom FROM ville WHERE (cp LIKE @code_postal)

Et en paramètre, je passe "84%"

Et là j'obtiens... rien (alors que bien sur il y a des communes dans le 84...) Si je passe "84000", ça me sort Avignon.

Le serveur est un SQL serveur 2005 Express

Une idée ?

Merci !

mardi 30 janvier 2007 à 16:59:49 | Re : Requete 'like'

ducker88

salut, quel est le type de ton champ "cp" ?

duck88

mardi 30 janvier 2007 à 18:03:15 | Re : Requete 'like'

scortex84

C'est un varchar. Et là tu vas me dire "mais pourquoi il n'y a pas plutot like '@code_postal' " ? La réponse : j'ai essayé, mais du coup, ce n'est plus pris comme un paramètre... Alors là je sais plus !

Une idée ?

mardi 30 janvier 2007 à 19:15:47 | Re : Requete 'like'

romagny13

ba a la rigueur
en 1 - tu remplis ton datset avec une requete classique de maniere a avoir l'ensemble des enregistrements

ex : SELECT cp, departement, id_unique, insee, nom FROM ville

en 2 - tu fais un filtre à l'affichage
this.NomDataSet.NomDataTable.DefaultView.RowFilter="cp LIKE '%" & unevariableOuAutre & "%'";

tu peux egalement filtrer en passant par l'intermediaire
- d'un bindsource
- ou utiliser une DataView

++


mardi 30 janvier 2007 à 19:36:54 | Re : Requete 'like'

ducker88

Si c'est des codes postal uniquement français tu peu également le mettre en entier sur 5, l'algo n'en est pas plus compliqué...

duck88

mardi 30 janvier 2007 à 19:58:04 | Re : Requete 'like'

romagny13

ouai je viens d'essayer de configurer un tableadapter comme toi (car le sujet m'interesse qauand meme)
et cela me fait exactement pareil
il faut mettre la valeur exacte(meme avec les espaces !!) apparemment
sinon je vais un pêu chercher et je te tiens au courant si j'ai du nouveau

sinoin meme si le contraire est dit parfois (meme dans certaines presentations Microsoft) je pense que le datset et les tableadapters ne sont pas vraiment pour executer ce type de requete complexe , en fait avec le mode deconnecte il me semble : il faut pour le mieux
> 1 charger l'ensemble des enregistrements des tables dont a besoin dans un dataSet et datatables et non faire une restriction
> 2 afin de travailler en local, on filtre en fait l'affichage

la preuve en est (que je ne dise pas de betises) c'est que meme lorsuqe tu reconfigures le tableadapter avec une requte parametree comme toi la, les requets de mises a jour ne sont plus en "phase" voir pas générée ce qui fait qu'en fait on est un peu pié gé a ne pouvoir en fait que faire de la consultation

je te tiens au courant si je trouve des trucs interessants
++


mercredi 31 janvier 2007 à 01:43:20 | Re : Requete 'like'

TheSaib

Administrateur CodeS-SourceS
SELECT cp, departement, id_unique, insee, nom FROM ville WHERE (cp LIKE @code_postal)

cmd.Parameters.AddWithValue("@code_postal","%" + valeur + "%");

Ca devrait marcher.


::|The S@ib|:: MVP C#.NET

mercredi 31 janvier 2007 à 09:40:30 | Re : Requete 'like'

scortex84

Merci beaucoup pour toutes vos réponses. Je sais bien qu'en codant tout ça, cela fonctionne. Mais le but de la manoeuvre, c'est d'utiliser les tableadapter et l'assistant de visual studio 2005 (je sais, c'est mieux de tout codé et tout et tout, mais dans RAD, il y a Rapide, et sur le coup, c'est rapide !).

Donc j'ai toujours pas la solution, et je cherche... je cherche !

Merci encore pour tous vos messages.

Seb.

mercredi 31 janvier 2007 à 10:23:06 | Re : Requete 'like'

sebmafate

Membre Club Administrateur CodeS-SourceS
hum... : "Si c'est des codes postal uniquement français tu peu également le mettre en entier sur 5, l'algo n'en est pas plus compliqué..."

oui... c'est comme ca qu'on se retrouve avec des codes postaux 2600... au lieu de 02600 !

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]



Cette discussion est classé dans : sql, requete, like, avignon, obtiens


Répondre à ce message

Sujets en rapport avec ce message

requete sql avec parametre [ par ced0013 ] Voila mon problème : impossible de faire marcher une requete sql avec des parametres !!j'ai une requete du genre : String cmdStr = "Select Nom from Ma Apostrophes dans une requete SQL [ par jdaviaud ] Dans ma requete sql, je souhaite remplacer les apostrophes par \' pour que la requete puisse etre insérée donc j'ai voulu utiliser la fonction mavaria Remplir une DataRow grace à une requete SQL [ par Sunnyprog ] Sunnyprogfont=GeorgiaBonjour ! J'ai créé un DataSet composé de deux DataTable, dans lequelles se trouvent des DataRows...( en C# et SQL 2000 ).Je voud Problème avec une requete SQL [ par jerome_p ] Bonjour, Voila j'ai un problème avec une requete SQL. Pour expliquer un peu, ma requete est construite par l'application et les paramètres sont dynam Resultat de requete sql incorrecte [ par Maiku ] Bonjour Je developpe actuellement un logiciel de cuisine en relation avec une base de données acces comportant 4 tables : Famille,Ingredients,Recettes dates en sql [ par ratsimisampy ] bonjour, voila, j'ai un souci avec ma requete SQL (je me sert de Access comme BD) sql = "select * from ope1 where DOCNUM IN (select COMMANDE from _ requete SQL dans un programme objet [ par Jojo092 ] Bonjour, j'ai un petit souci. J'aimerais faire une mise à jour d'une base access sur mon programme C#, ms il me met un message d'erreur qui est : "Err requete sql [ par beny100 ] bonjour, quant j'execute mon programme en c# pour remplir ma table sql il m'affiche ce messageExpiration du délai d'attente. Le délai d'attente s'est Probleme de requete SQL [ par JuGuuL ] Bonjour, Ceci est plus une question SQL que C# mais bon, vu que je le fais en C# !!! J'ai une connexion a une base de donnée Access Quand je fais c combobox et requete sql [ par kakol ] Rebonjour,j'ai utilise string choix = comboBox1.SelectedText.ToString(); pour selectionner le texte de ma combobox. Ce texte est le nom d'une table de


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,562 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.