Requete SQL avec Variable en Where [Fermé]

Signaler
-
Messages postés
2964
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
-
Bonjour,

Je suis étudiant en informatique, et je suis actuellement en stage dans une entreprise dans laquelle je dois me charger d'une base de données.

Les utilisateurs n'étant pas anglophones, ni même très doués en informatique, j'ai adopté une solution MySQL couplé avec Excel, histoire qu'il ne soit pas dépaysé de leur solution habituelle.

Après avoir fait mes tables, j'ai fait des vues, pour que les utilisateurs puissent exploiter la BDD. Mais j'ai un problème, je n'arrive pas a faire une requête avec paramètre. Mes connaissances en SQL sont assez limitées, je cherche sur internet depuis un moment maintenant.

En fait, je souhaiterais faire quelque chose qui ressemblerait a ça :

Select NumCommande, DateCommande, Paiement From Commande, client Where (Je vous passe la jointure (je fais des vieilles jointures dans le where, je sais)) And Nom/Prenom = "Saisie de l'utilisateur"

Je ne sais même pas si c'est possible, je me rappelle avoir fait ça sur Access, mais j'aimerais savoir si sur MySQL c'est aussi possible ou non...

Merci d'avance pour vos réponses.

4 réponses

Oui, en fait quand je parlais d'access, c'était juste pour dire que j'avais déjà fait des variables dans des requêtes SQL sur Access (mais ça devait être en VBA derrière en fait, maintenant que j'y pense.). Ici, je n'utilise que Excel et MySQL, MySQL me sert a mettre ma BDD en place, et Excel a l'afficher avec une interface plus "user friendly" (via MySQL Excel)


Pour mieux expliquer, je veux juste faire une requête ou on pourrait décider du nom du client au moment ou l'on exécute. Mettre une restriction sur mon select via une entrée sur le clavier par l'utilisateur.


Pour l'instant ma vue contient :


select
'commandes'.'NumCommande' AS 'NumCommande',
'commandes'.'DateCommande' AS 'DateCommande',
'commandes'.'Montant' AS 'Montant',
'commandes'.'Paiement' AS 'Paiement',
from
('client'
join 'commandes')
where
('commandes'.'NumCli' = 'client'.'NumCli')


(le code est retouché par MySQL la)

Du coup, il me manquerait un AND NomCli = "Saisie"... Mais je pense pas que ce soit possible directement avec MySQL non ?
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 91875 internautes nous ont dit merci ce mois-ci

Messages postés
75
Date d'inscription
lundi 5 septembre 2011
Statut
Membre
Dernière intervention
21 janvier 2016
1
Tu as essayé comme ça ?
Sinon je pense que tu dois créer une sous requête
>
Messages postés
75
Date d'inscription
lundi 5 septembre 2011
Statut
Membre
Dernière intervention
21 janvier 2016

Comment ca "comme ca" ?

Toute ma requete marche, a part cette histoire de choix de client. Je sais pas comment faire passer la saisie de l'utilisateur en variable...
Messages postés
75
Date d'inscription
lundi 5 septembre 2011
Statut
Membre
Dernière intervention
21 janvier 2016
1
Attention entre le Excel et Acces ce n'est pas exactement la même chose. Essaye de mieux expliquer ce que tu veux faire...
Je pense que c'est pas possible en fait. Je peux pas saisir un element depuis excel pour qu'il influe sur mysql, sachant que le seul moyen que j'aurais de passer ma variable, ce serait du php (je crois)...

Une sous requête, ça devait être la solution, mais la, je vois vraiment pas, donc, j'attends ce soir voir si il y a d'autres réponses, sinon je mettrai le sujet en résolu.

Merci quand même.
Messages postés
2964
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
184
bonjour
un exemple avec Where

SELECT [T-Fichier Adresses].Titre, [T-Fichier Adresses].Prénom, [T-Fichier Adresses].[Nom de famille], [T-Fichier Adresses].Commune
FROM [T-Fichier Adresses]
WHERE ((([T-Fichier Adresses].Commune)=[Quelle Ville]));

C'est une requete paramètrée
Lorsque tu lances la requete, access demande de repondre a la question quelle ville.
La tu inscris la ville et tu as toutes les adresses de cette ville.