Requete SQL dans VB6 (base : ACCESS)

Fermé
ch_salim Messages postés 32 Date d'inscription jeudi 8 mars 2001 Statut Membre Dernière intervention 31 mars 2007 - 28 janv. 2003 à 12:08
ch_salim Messages postés 32 Date d'inscription jeudi 8 mars 2001 Statut Membre Dernière intervention 31 mars 2007 - 29 janv. 2003 à 17:50
champs dans le select :
date debut - date fin - n° trait,libelle, description - nom patient
nom vaccin, nom medicament



cmdADO.CommandText = "

***************************************************
* Instruction SQL - Requete sur 5 ou 6 tables.... *
***************************************************


SELECT Traitement.[n° traitement], traitement.[libelle trait], traitement.[description trait], debuter.[date debut], finir.[date fin], patient.[nom patient], vaccin.[libelle vaccin], medicament.[nom med]

FROM Traitement, Debuter, Finir, Patient, vaccin, medicament

WHERE Vaccin.[n° vaccin]=Integrer.[n° vaccin]

AND Traitement.[n° traitement]=Integrer.[n° traitement]

AND Patient.[n° patient]=Finir.[n° patient]

AND Traitement.[n° Traitement]=Finir.[n° traitement]

AND Patient.[n° patient]=Debuter.[n° patient]

And Traitement.[n° Traitement]=Debuter.[n° traitement]

AND Traitement.[n° traitement] = Comprendre.[n° traitement]

And Medicament.[n° medicament] = Comprendre.[n° medicament]"


Est ce qu'il est possible dans VB de faire une requete avec autant de "AND". Sur la form, j'ai plusieurs champs textes et plusieurs cles etrangeres a faire apparaitre issues de plusieurs tables (5 au total)

J'utilise ADODB (sans controle ADODC)

Si la reponse est non (c'est impossible d'utiliser cette requete) est ce qu'il est possible cette fois de creer plusieurs "command" et des recordset associés... ? et de synchroniser les enregistrements..... ?!?
P.S. : ma base est en ACCESS



Dans une autre form j'ai le code suivant, est ce que c'est correct ?

Private Sub Form_Load()
' Choix du fournisseur de la Base de Données - pour Access - Microsoft jet OLEDB
cnnADO.Provider = "Microsoft.jet.OLEDB.4.0"
' Chemin de la Base de Données - répertoire de l'application
cnnADO.ConnectionString = App.Path & "\mediclic.mdb"
' Ouverture de la Base de Données
cnnADO.Open
' Pour relier la connexion ouverte à la commande
cmdADO.ActiveConnection = cnnADO
' Configuration de la conmande avec requete SQL
cmdADO.CommandText = "SELECT Recettes.*, GENERER.date FROM Recettes INNER JOIN (Consultation INNER JOIN GENERER ON Consultation.[n° consultation] = GENERER.[n° consultation]) ON Recettes.[n° recette] = GENERER.[n° recette] ORDER BY GENERER.date"
' Initialisation du Curseur Client (il permet d'associer des methodes ou proprietes à une requête "Query"
rsADO.CursorLocation = adUseClient
' Utilisation d'un Curseur Client Dynamique
rsADO.CursorType = adOpenDynamic
' Vérouillage de l'Enregistrement dès son accès
rsADO.LockType = adLockPessimistic
' Transmission de la commande à la méthode Open
' Open : permet d'efectuer une opération d'entrée/sortie sur un fichier
rsADO.Open cmdADO
' Appel de la procédure de lecture de l'Objet Recordset pour mise à jour des Zones de Textes
Call ReadRecord
End Sub
Private Sub ReadRecord()
'Procédure de Lecture dans l'Objet Recordset
'Champs à afficher : N° recette, Libelle, Montant, description, Generer.date
On Error GoTo Erreur

'If IsNull(rsADO![n° recette]) Then
' Text1.Text = ""
'Else
'''''''''''''''''''''''''''''Text1.Text = (rsADO![n° recette])
'End If
'If IsNull(rsADO![libelle recette]) Then
' Text2.Text = ""
'Else
rsADO.Fields(1) = Text1.Text
rsADO.Fields(2) = Text2.Text
rsADO.Fields(3) = Text3.Text
rsADO.Fields(4) = Text4.Text
rsADO.Fields(5) = Text5.Text


''''''''''''''''''''''''''Text2.Text = (rsADO![libelle recette])
'End If
'If IsNull(rsADO![Montant recette]) Then
' Text3.Text = ""
'Else
'Text3.Text = (rsADO![Montant recette])
'End If
'If IsNull(rsADO![description recette]) Then
' Text4.Text = ""
'Else
'Text4.Text = (rsADO![description recette])
'End If
'If IsNull(rsADO![Date]) Then
' Text5.Text = ""
'Else
'Text5.Text = (rsADO![Date])
'End If
Text6.Text = "Enregistrement " & rsADO.AbsolutePosition + 1 & " de " & rsADO.RecordCount
Erreur:
Debug.Print "faut debugger !"
MsgBox "Impossible d'accèder à la base de données"
End Sub



--->L'informaticien toujours en quete<---

6 réponses

teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
28 janv. 2003 à 12:16
Dis, je voudrais pas jouer les rabat joie, mais
1-On voit pas bien ce que tu veux
2-Tu dis pas bonjour
3-On a l'impression que tu n'a fait aucun effort sur ce truc et que tu as pas envie de le faire...quand je vois un bloc comme ca, j'ai pas envie d'essayer de comprendre le probleme puisque meme toi tu sembles ne pas etre motive pour le faire...

.  .
\_/
0
ch_salim Messages postés 32 Date d'inscription jeudi 8 mars 2001 Statut Membre Dernière intervention 31 mars 2007
28 janv. 2003 à 12:25
Bonjour ;) je suis vraiement desole...
Mais je suis dessus depuis des jours et j'arrive pas a le faire...
Contrairement a ce que tu dis, j'ai vraiement envie de le faire.

Ma question etait : est ce que la requete SQL au debut du message est juste ? (c a d est qu'(on mettre autant de "AND" dans une requete SQL)
et ensuite comme j'utilise ADO, et comme il y a plusieurs maniere (AVEC ADO) d'acceder aux données, je me demandais si ce que j'avais mis est juste (c'est pour ça que j'ai mis le code d'une form)
Merci beaucoup !
--->L'informaticien toujours en quete<---
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
28 janv. 2003 à 12:36
Bon pris comme ca, ca va mieux ;-)
Pour la premiere question, il ne devrait pas y avoir de probleme, du moins pas dans la requete elle meme ou dans la base, par contre je connais pas suffisament ADO pour te dire le reste...

.  .
\_/
0
ch_salim Messages postés 32 Date d'inscription jeudi 8 mars 2001 Statut Membre Dernière intervention 31 mars 2007
28 janv. 2003 à 12:37
ET.... je voulais ajouter une chose...
en fait, le message a ete tape chez moi et enreistre sur une disquette. (je me connecte dans un cyber cafe)
donc, c'est pour ça que j'ai omis les formules de politesse ;)
je suis navré !

bonne Prog !

--->L'informaticien toujours en quete<---
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
28 janv. 2003 à 12:39
Disons que le pire est quand meme de commencer directement par une ligne technique...Mais c'est pas grave, le tout c'est de s'en apercevoir ;-)

.  .
\_/
0
ch_salim Messages postés 32 Date d'inscription jeudi 8 mars 2001 Statut Membre Dernière intervention 31 mars 2007
28 janv. 2003 à 12:40
So, Est ce qu'il est possible d'utiliser les memes requetes (avec jointure de plusieurs tables 5 ou6) avec DAO (controle data)
???!?
--->L'informaticien toujours en quete<---
0
ch_salim Messages postés 32 Date d'inscription jeudi 8 mars 2001 Statut Membre Dernière intervention 31 mars 2007
29 janv. 2003 à 00:30
Personne n'a une reponse ? s'il vous plait !
--->L'informaticien toujours en quete<---
0
Utilisateur anonyme
29 janv. 2003 à 01:12
salut à toi,

ben écoute ça fait longtemps que je n'y ai pas tripoté mais pour autant que je me souvienne, tu devrais par ADO parvenir à tes fins, je veux dire, si c'est au niveau des requêtes que tu te fais du souci, tant que ton code SQL est propre, que ce soit en ADO ou DAO, aucune raison que ça fasse une différence.

mais en fait j'ai du mal à comprendre exactement la question et sincèrement je ne me sens pas la forme pour lire ton premier message et je ne crois pas que je le lirai

a+

kinder.surprise,
le maton du matou
0

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

Posez votre question
salut,
dans la démarche, je pense que :

1) avant de demander : "Est-ce que ça marche ?", il faut que tu testes par toi même. En cas d'erreurs que tu n'arrives pas à résoudre, pose la question.

2) il faut peut-être aussi savoir ce que tu veux faire. (ADO, DAO ) Si tu ne sais pas, pose également la question sur les différences en expliquant également ce à quoi tu veux arriver.

Maintenant, pour ta requête, elle m'a l'air correcte. As-tu d'autres soucis ?

ciao,

Alain
0
ch_salim Messages postés 32 Date d'inscription jeudi 8 mars 2001 Statut Membre Dernière intervention 31 mars 2007
29 janv. 2003 à 17:50
MERCI BCP....

--->L'informaticien toujours en quete<---
0