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

Access Discussion :

Modifiez une instruction SQL en Visual Basic


Sujet :

Access

  1. #1
    Expert éminent sénior
    Modifiez une instruction SQL en Visual Basic
    Bonjour,

    Un nouveau tutoriel rédigé par Christophe Le Fustec alias LedZeppII vient de rejoindre nos pages.

    http://ledzeppii.developpez.com/instrsqlvb/

    Citation Envoyé par L'auteur
    I. Introduction
    La plupart du temps, nous créons nos requêtes à l'aide d'outils visuels, sans se préoccuper du code SQL généré. Pour qu'elles puissent répondre à différentes situations, nous avons la possibilité, dans Access, de les paramétrer. Le plus souvent cela consiste à faire référence à des contrôles de formulaires.
    Mais si le paramètre ne se trouve pas sur un formulaire, ou si la requête est la source d'un recordset, ou si le contrôle du formulaire est vide, on est coincé. Même chose, si on développe en dehors d'Access.
    L'alternative à cette technique est de modifier dynamiquement, en Visual Basic, une partie du code SQL d'une requête, d'une instruction SQL, ou d'une expression SQL (condition Where de l'ouverture d'un formulaire, d'un filtre de formulaire, d'une fonction de regroupement, …), de manière à la rendre variable...
    Et vous, comment gérez vous les paramètres de vos requêtes ?

  2. #2
    Expert éminent sénior
    Bien entendu, vous pouvez utiliser cette discussion pour laisser vos commentaires sur ce nouveau tutoriel.

  3. #3
    Membre expérimenté
    Salut Tofalu et LedZeppII ,
    S’il y en a un que j’attendais, espérais, et encore plus c’est bien celui-là, et je ne suis surement pas le seul. Développeur enfin restons quand même modeste depuis longtemps, « trop longtemps » !!!!, en basic, puis VB, VBA en faisant connaissance avec Office, je n’ai eu pas trop de mal à construire mes programmes et fonction en VBA, mais par contre le SQL, d’abord utilisé simplement dans le QBE, contourné le plus souvent possible par des fonctions VBA, ne voulant être ni sectaire et souvent + efficace et rapide, j’avoue avoir assez de mal à intégrer correctement où alors après de longs tâtonnements une instruction SQL dans mes programmes.
    Donc un grand merci à Christophe pour ce tuto.

  4. #4
    Invité
    Invité(e)
    Bonjour

    Excellent tuto, surtout pour les intégrations dans les requêtes SQL de données de type Texte, Date ou numérique.

    Une lecture impérative pour tous.

    Philippe

  5. #5
    Candidat au Club
    Merci LedZeppII, votre cours "Modidfier une instruction SQl (ou requête) en VB m'a beaucoup aidé dans un de mes projets.
    Par contre j'ai un petit soucis pour mettre sous vb6 une requête plus complexe. J'essaye de mon coté mais je dois oublier un paramètre car à chaque fois j'ai un message d'erreur.
    Si vous avez un peu de temps à m'accorder ci-joint la dite requête:

    SELECT [03BTH_es].[code essai], [03BTH_es].zone, [03BTH_es].region, [03BTH_es].Année, [03BTH_es].Dpt, [03BTH_es].organisme, [03BTH_va].variété, [01BTH_va_1].variété, [01BTH_va_2].variété, [01BTH_va_3].variété, [01BTH_va_4].variété, [03BTH_va].rdt, [01BTH_va_1].rdt, [01BTH_va_2].rdt, [01BTH_va_3].rdt, [01BTH_va_4].rdt, [03BTH_va].[% temoins], [01BTH_va_1].[% temoins], [01BTH_va_2].[% temoins], [01BTH_va_3].[% temoins], [01BTH_va_4].[% temoins], [03BTH_va].PS, [01BTH_va_1].PS, [01BTH_va_2].PS, [01BTH_va_3].PS, [01BTH_va_4].PS, [03BTH_va].proteine, [01BTH_va_1].proteine, [01BTH_va_2].proteine, [01BTH_va_3].proteine, [01BTH_va_4].proteine
    FROM ((((03BTH_es INNER JOIN 03BTH_va AS 01BTH_va_2 ON [03BTH_es].[code essai] = [01BTH_va_2].[code essai]) INNER JOIN 03BTH_va AS 01BTH_va_1 ON [03BTH_es].[code essai] = [01BTH_va_1].[code essai]) INNER JOIN 03BTH_va ON [03BTH_es].[code essai] = [03BTH_va].[code essai]) INNER JOIN 03BTH_va AS 01BTH_va_4 ON [03BTH_es].[code essai] = [01BTH_va_4].[code essai]) INNER JOIN 03BTH_va AS 01BTH_va_3 ON [03BTH_es].[code essai] = [01BTH_va_3].[code essai]
    WHERE ((([03BTH_va].variété)=[Variete1]) AND (([01BTH_va_1].variété)=[Variete2]) AND (([01BTH_va_2].variété)=[Variete3]) AND (([01BTH_va_3].variété)=[Variete4]) AND (([01BTH_va_4].variété)=[Variété5]));

    Merci d'avance de votre aide.
    Chti59

###raw>template_hook.ano_emploi###