|
Requete SQL et Source de données |
Started by François C., Jul., 12 2018 4:45 PM - 4 replies |
| |
| | | |
|
| |
Registered member 1,623 messages Popularité : +100 (114 votes) |
|
Posted on July, 12 2018 - 4:45 PM |
Bonjour,
Comment afficher la requete SQL envoyée au serveur HFSQL dans le cas suivant :
sRequeteSQL est une chaine = "SELECT * FROM MaTable WHERE Param1 = {Param1} and Param2 = {Parm2}" sdRequete est une source de données sdRequete.Param1 = 1 sdRequete.Param2 = 2 //etc ...
SI PAS HExécuteRequêteSQL(sdRequete,hModifieFichier,sRequeteSQL) ALORS // afficher la requete envoyée ICI pouvoir afficher la requete qui a posé probleme FIN Message modified, July, 12 2018 - 4:45 PM |
| |
| |
| | | |
|
| | |
| |
Registered member 257 messages Popularité : +35 (37 votes) |
|
Posted on July, 12 2018 - 10:26 PM |
sdRequete est une source de données,description=MaTable sRequeteSQL est une chaine = chaineconstruit("SELECT * FROM MaTable WHERE Param1=%1 and Param2=%2",1,2)
//etc ...
SI PAS HExécuteRequêteSQL(sdRequete,hRequêteDéfaut,sRequeteSQL) ALORS info(sRequeteSQL) FIN
-- Baptiste CLOART Freelance b.cloart@blv-tech.com 06.88.74.80.65 www.linkedin.com/in/cloart www.blv-tech.comMessage modified, July, 12 2018 - 10:27 PM |
| |
| |
| | | |
|
| | |
| |
Registered member 1,623 messages Popularité : +100 (114 votes) |
|
Posted on July, 13 2018 - 10:35 AM |
Bonjour,
ChaineConstruit n'est pas recommandée pour diverses raisons dont la protection contre l'injection SQL. C'est pour cette raison que j'utilise une source de données paramétrée.
Du coup j'ai utilisé en attendant de trouver mieux le databinding avec le mapping sur les membres de classe.. mais ça ne permet plus de personnaliser la requête |
| |
| |
| | | |
|
| | |
| |
Posted on July, 13 2018 - 11:12 AM |
Bonjour
"Comment afficher la requete SQL envoyée au serveur HFSQL dans le cas suivant :" en cas d'erreur je suppose ... => faire info(herreurinfo()) pour afficher l'erreur sur le poste utilisateur autre solution conserver le texte sql et l'erreur dans un fichier HyperFile avec aussi la date et l'heure par exemple
ici il y a un probléme dans la requete sur {Parm2} à la place de {Param2} => il manque un 'a'
en Windev 23 voir la nouvelle variable "Requête SQL" , utilisation plus simple des paramétres de requêtes
bon devs |
| |
| |
| | | |
|
| | |
| |
Registered member 1,623 messages Popularité : +100 (114 votes) |
|
Posted on July, 13 2018 - 2:48 PM |
Bonjour,
Effectivement je n'avais pas remarqué la faute de frappe. Mais bon le souci n'est pas la. En fait, quand on utilise une source de donnée paramétrée, elle ne modifie la chaine contenant la requête pour autant. ErreurInfo dit qu'il y a bien une erreur mais n'affiche pas la requete envoyée avec tous ses parametres renseignés. Si je fais :
Erreur(sRequeteSQL) , ca m'affiche la requete sans les parametres renseignés.
Concernant la nouvelle variable Requete SQL, elle est TRESSS pratique et je m'en sert tous les jours ! Seulement, sa requête n'est définissable QUE lors de l'on déclare la variable. On ne peut pas définir la requête par la suite (ce qui est mon cas, D’où l'utilisation d'une chaine)Message modified, July, 13 2018 - 2:51 PM |
| |
| |
| | | |
|
| | | | |
| | |
|