Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 14 November 2001 21:15

Geocarto
Invité

Requetes SQL

Bonjour,

Je souhaite automatiser certaines requetes SQL pour des utilisateurs ne connaissant pas le SQL. J’ai fait un premier jet mais la requete selectionne toute la table. Je pense que le probleme vient du fait que dans la clause « where » je mets des variables (ex : where variable1+variable_EditBox).Variable1=colonne.matable et variable_EditBox=valeur de Editbox). En fonction des cases cochees, la requete est differente.

Le code de la requete SQL :

Select * from matable
Where variable1+variable_EditBox1+”and”+ variable2+variable_EditBox2+”and”+ variable3+variable_EditBox3
Into Selection

J'attends avec impatience vos remarques.
A+

Geocarto

 

#2 Wed 14 November 2001 21:17

Jacques Paris
Invité

Re: Requetes SQL

Vous devez utiliser la commande run command... si vous voulez passer des
variables (noms de colonnes) comme arguments. Ainsi

dim s_cmd as string
s_cmd= Select * from +matable+ Where +variable1+variable_EditBox1+” and ”
+ variable2+variable_EditBox2+” and ”+ variable3+variable_EditBox3+ Into
Selection
run command s_cmd

Cette technique permet aussi de construire des commandes avec un nombre
variable de variables . Elle pourrait etre reecrite comme suit

dim i as smallint
dim s_cmd as string

s_cdm= Select * from +matable+ Where
for i=1 to 3
s_cmd=s_cmd+ variable +str(i)+variable_EditBox+str(i)+” and ”
next
s_cmd=left(s_cmd,len(s_cmd)-4)+ Into Selection
run command s_cmd

J'ai cependant des doutes en ce qui concerne le resultat d'expression comme
variable1+ variable_EditBox1 . Il faudra que vous apportiez les ajustements
voulus a la formule que j'ai utilisee, mais les principes devraient rester
les memes.

Jacques Paris

 

Pied de page des forums

Powered by FluxBB