Pb avec regex

rudhf Messages postés 62 Date d'inscription mercredi 26 avril 2006 Statut Membre Dernière intervention 30 juin 2007 - 8 mai 2007 à 20:20
rudhf Messages postés 62 Date d'inscription mercredi 26 avril 2006 Statut Membre Dernière intervention 30 juin 2007 - 10 mai 2007 à 00:23
Bonjour,
Je développe une application qui fait une connexion avec une BD. Il y a un richtext où l'usager saisit la requête SQL. Alors il faut que je fasse une analyse à cette requête avec regex.
Si j'écrit par exemple:
(@"^SELECT\s<expression1>\sFROM\s<expression2>\sWHERE\s<expression3>$")
expression1 à son tour n'est pas atomique, c'est une expression régulière que je dois programmer. En plus, SELECT peut avoir des clauses imbriquées. Alors comment faire ?
Merci pour votre aide.<!-- / message -->

6 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
9 mai 2007 à 10:49
Salut,
La question n'est pas très claire. Tu veux récupérer ce qu'il y a dans les expressionX ?

<hr />
-Blog-
0
rudhf Messages postés 62 Date d'inscription mercredi 26 avril 2006 Statut Membre Dernière intervention 30 juin 2007 2
9 mai 2007 à 11:55
Merci pour votre réponse.
Ce que je veux faire est de tester si la requête saisie par l'utilisateur est correcte ou non. Par exemple
select nom, prénom from personne where age=20;
Ici expression1=nom, prénom. Elle aussi est une expression régulière, je dois la tester et gérer les erreurs.
J'espère que j'étais clair, en tout cas je sus disponible pour toute autre question.
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
9 mai 2007 à 13:55
Vérifier la validité d'une requête SQL, c'est pas si facile que ça... Surtout que y'a des tonnes de façons différentes de former une requête !
En fait, ce que tu aimerais faire, c'est un peu ce qu'offre le query analyser... non?

<hr />
-Blog-
0
rudhf Messages postés 62 Date d'inscription mercredi 26 avril 2006 Statut Membre Dernière intervention 30 juin 2007 2
9 mai 2007 à 15:22
Peut tu me donner un coup de main alors.
Pour le query analyser, je le connais pas.
Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
9 mai 2007 à 21:35
Si tu as des questions précises oui, si c'est pour faire tout le programme, non.
On ne peut pas faire une regex qui fait ce que tu veux, c'est un peu plus compliqué que ça quand même, et y'a plusieurs heures de travail...

<hr />
-Blog-
0
rudhf Messages postés 62 Date d'inscription mercredi 26 avril 2006 Statut Membre Dernière intervention 30 juin 2007 2
10 mai 2007 à 00:23
Oui, j'ai qlq questions bien précises.
1) Comment gérer les erreurs avec regex ?
2) Voici une petite partie de SELECT:  select [distinct|all] col[,col]+
col peut avoir: count(*)|sum(*)|avg(*)|max(*)|min(*)|count(nom_colonne)|sum(nom_colonne)|avg(nom_colonne)|max(nom_colonne)|min(nom_colonne)|nom_colonne
Comment programmer ça avec les regex ? si je comprend ça je peux continuer tout seul.
Merci
0
Rejoignez-nous