|
| Débuté par jobind, 01 nov. 2012 11:05 - 3 réponses |
| |
| | | |
|
| |
| Posté le 01 novembre 2012 - 11:05 |
J'essaie de rendre plus flexible l'opérateur LIKE dans une requête.
Au départ, je peux utiliser le code :
WHERE transactions.trans_date LIKE '%1231'
sans difficulté.
Si je remplace '%1231' par une variable de type chaîne, telle que sMoisJour, la requête donne comme avertissement : "Mot sMoisJour inattendu".
En utilisant l'éditeur de requête, si je spécifie la condition "finit par" le paramètre "Param_fin_de_mois"
L'éditeur de requête utilise la syntaxe suivante :
WHERE transactions.trans_date LIKE %{Param_fin_de_mois}
Si j'essaie de tester la requête et que j'entre la valeur 1231 pour le paramètre, je reçois le message d'erreur :
Numéro d'erreur = 22
You have an error in your syntax ... right syntax to use near '%1231
Comment puis-je procéder pour utiliser un paramètre? |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 2 321 messages |
|
| Posté le 01 novembre 2012 - 14:33 |
Bonjour,
Essayez : WHERE transactions.trans_date LIKE '%{Param_fin_de_mois}'
Bon dev. Jean-Pierre |
| |
| |
| | | |
|
| | |
| |
| Posté le 01 novembre 2012 - 20:33 |
Finalement, j'ai opté pour l'utilisation de ChaîneConstruit, en utilisant un paramètre pour la fin de mois désirée. Puis, j'exécute la requête avec HExécuteRequêteSQL, et ça fonctionne.
J'ai donc :
sReqÀconstruire = "SELECT ... "WHERE" "transactions.trans_date LIKE '%1'" ....
sReq = ChaîneConstruit(sReqÀconstruire,sMoisJour)
HExécuteRequêteSQL(sdMaRequête, cnxBase, sReq)
Merci pour votre réponse.
On 2012-11-01 09:40, Jean-Pierre BLOCH wrote:
Bonjour,
Essayez : WHERE transactions.trans_date LIKE '%{Param_fin_de_mois}'
Bon dev. Jean-Pierre
|
| |
| |
| | | |
|
| | |
| |
| Posté le 02 novembre 2012 - 11:46 |
Denis Jobin a formulé la demande :
J'essaie de rendre plus flexible l'opérateur LIKE dans une requête.
Au départ, je peux utiliser le code :
WHERE transactions.trans_date LIKE '%1231'
sans difficulté.
Si je remplace '%1231' par une variable de type chaîne, telle que sMoisJour, la requête donne comme avertissement : "Mot sMoisJour inattendu".
En utilisant l'éditeur de requête, si je spécifie la condition "finit par" le paramètre "Param_fin_de_mois"
L'éditeur de requête utilise la syntaxe suivante :
WHERE transactions.trans_date LIKE %{Param_fin_de_mois}
Si j'essaie de tester la requête et que j'entre la valeur 1231 pour le paramètre, je reçois le message d'erreur :
Numéro d'erreur = 22
You have an error in your syntax ... right syntax to use near '%1231
Comment puis-je procéder pour utiliser un paramètre?
LeNomDeMaRequete.Param_fin_de_mois = MaValeur HExecuteRequete(LeNomDeMaRequete,....) .....
ou
HExécuteRequête(LeNomDeMaRequete,hRequêteDéfaut,MaValeur)
voir ici §"Liste de valeurs / Liste de paramètres" et "Autre méthode pour passer les paramètres d'une requête" : http://doc.pcsoft.fr/fr-FR/?3044080&name=hexecuterequete_fonction&q=HEx%C3%A9cuteRequ%C3%AAte
-- Cordialement JeAn-PhI |
| |
| |
| | | |
|
| | | | |
| | |
|