IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Sélection valeurs saisies IHM pour filtre sur base de données - VBSCRIPT


Sujet :

Développement SQL Server

  1. #1
    Candidat au Club
    Homme Profil pro
    GTC/GTB
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : GTC/GTB

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Sélection valeurs saisies IHM pour filtre sur base de données - VBSCRIPT
    Bonjour,

    Alors j'ai actuellement un script (VBscript) avec cette commande qui me permet d'accéder à ma base de données et sélectionner la table, la colonne concernée et la plage de valeurs souhaitée.

    Sauf que dans mon application, j'aimerais récupérer les valeurs saisies par l'utilisateur et non des valeurs pré remplies.

    Code vbscript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim v1, v2
     
    v1 = min.Value (je récupère ici la valeur saisie par l'utilisater dans une zone de texte)
    v2 = max.Value 
     
    RS.Open "SELECT * From 'NOM_TABLE" WHERE PropertyFullName = 'NOM_COLONNE' and PropertyValue between '15' and '21'", Cnx, CursorTypeStatic, LockTypeOptimistic

    Je pense que cela est possible mais je me perd avec la syntaxe et je n'arrive pas à trouver le sens dans lequel je dois tourner ça !

    Si vous avez des idées, je suis preneur, Merci d'avance.

  2. #2
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 170
    Points : 7 421
    Points
    7 421
    Billets dans le blog
    1
    Par défaut
    Recherche du côté de "InputBox" (il me semble me souvenir).

    Sinon, avec passage d'arguments en ligne de commande...

  3. #3
    Candidat au Club
    Homme Profil pro
    GTC/GTB
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : GTC/GTB

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Alors,

    J'utilise en parallèle une application de supervision dans laquelle j'ai déjà deux zones de texte (min et max) et j'arrive à récupérer correctement les valeurs saisies par l'utilisateur en faisant ce que j'ai mis :

    v1 = min.value

    Donc v1 contient bien la valeur saisie par l'utilisateur, la ou je bloque c'est passer ça en argument.

  4. #4
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 170
    Points : 7 421
    Points
    7 421
    Billets dans le blog
    1
    Par défaut
    ah ok ! j'avais mal compris.

    Le plus simple :
    Modifier la chaîne littérale de la requête SQL. Facile. Mais si tu le fais, change d'adresse sans laisser de nom sinon ta tête pourrait bien se retrouver assez rapidement sur un pieu.

    La seule et l'unique solution à utiliser :
    Requête paramétrée.
    http://www.developpez.net/forums/d11...rees-vbscript/

  5. #5
    Candidat au Club
    Homme Profil pro
    GTC/GTB
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : GTC/GTB

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Alors j'ai réussi, je vous donne le code si cela peut aider quelqu'un, on ne sait jamais.

    Merci encore à vous pour la rapidité avec laquelle vous répondez aux messages.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RS.Open "SELECT * From "NOM_TABLE" WHERE "NOM_COLONNE1" = 'TEXTE RECHERCHE' and "NOM_COLONNE2" between '" & min.Value & "'and '" & max.Value & "' and "NOM_COLONNE3" between '" & Date1.Value & "'and '" & Date2.Value & "'", Cnx, CursorTypeStatic, LockTypeOptimistic
    Ce code me permet donc en gros de sélectionner une table et de pouvoir filtrer une plage de valeurs, de dates (renseignées par l'utilisateur) sur des champs bien précis.

  6. #6
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 170
    Points : 7 421
    Points
    7 421
    Billets dans le blog
    1
    Par défaut
    Déménage dans un pays lointain sans laisser d'adresse ou ta tête pourrait bien finir sur un pieu :o

    Il ne faut PAS utiliser de SQL dynamique.
    Tu dois passer par des paramètres.
    C'est plus propre, plus performant, plus lisible, et c'est comme ça qu'il faut faire.

    Là, t'es en train de prendre l'autoroute à contre sens en pleine nuit et sans éclairage.

  7. #7
    Candidat au Club
    Homme Profil pro
    GTC/GTB
    Inscrit en
    Avril 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : GTC/GTB

    Informations forums :
    Inscription : Avril 2015
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Ok,

    Essaie de m'aiguiller sur la manière pour passer des paramètres.

    Car j'ai plusieurs lignes comme celle-ci avec :

    Le nom de la table qui peut changer ainsi que le texte de la colonne "PropertyFullName" aussi.

    Merci

  8. #8
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 170
    Points : 7 421
    Points
    7 421
    Billets dans le blog
    1
    Par défaut
    https://msdn.microsoft.com/en-us/lib...(v=vs.90).aspx

    Normalement, tu peux aussi utiliser des paramètres nommés (à la place des ? tu mets "@nomparam") et la syntaxe du createparameter change un peu.
    Mais je trouve pas d'exemple...
    Commence par la version avec "?".

Discussions similaires

  1. Quel SGBD choisir pour une petite base de donnée sur clé USB ?
    Par kedare dans le forum Décisions SGBD
    Réponses: 10
    Dernier message: 29/07/2008, 16h31
  2. Réponses: 1
    Dernier message: 16/11/2007, 12h14
  3. Réponses: 1
    Dernier message: 05/11/2007, 17h58
  4. Réponses: 2
    Dernier message: 06/05/2007, 18h15
  5. IHM console pour logiciel de base de données
    Par kangourou_for_ever dans le forum Linux
    Réponses: 6
    Dernier message: 03/09/2006, 17h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo