Mettre le résultat d'une requête dans un fichier texte
morpheus83z
Messages postés59Date d'inscriptionmercredi 26 mai 2004StatutMembreDernière intervention19 août 2004
-
27 mai 2004 à 09:53
morpheus83z
Messages postés59Date d'inscriptionmercredi 26 mai 2004StatutMembreDernière intervention19 août 2004
-
27 mai 2004 à 12:07
Salut !
En premier lieu je vous fournis le code de mon "prog" :
Option Explicit
Public Function Main()
Dim MyDb As Database
Dim MyRecordset As Recordset
Dim Requete As String
MyDb = mysql_init(0)
If Not pMySQL = 0 Then
Set MyDb = OpenDatabase("euriview", dbDriverNoPrompt, False, "ODBC;DATABASE=euriview;UID=adesmars;PWD=281083")
Else
MsgBox "Connexion à la base de donnée impossible", _
vbCritical, "Erreur"
Requete = "SELECT idlog,login FROM utilisateur"
MyDb.Execute Requete
Open "c:\resultat_req.php" For Output As #1
Print #1, "$Requete"
Close #1
Call Main
End Function
End Sub
Je suppose qu'il y a des erreurs mais j'aimerais savoir si ce que je fais est possible et si oui, que dois-je corriger ? Merci beaucoup.
A voir également:
Mettre le résultat d'une requête dans un fichier texte
morpheus83z
Messages postés59Date d'inscriptionmercredi 26 mai 2004StatutMembreDernière intervention19 août 2004 27 mai 2004 à 10:37
ah oui, c'est vrai que la requête dans le fichier ça le fait pas .. j'ai déjà eu le prob en PHP mais plus simple à résoudre :) ! Donc j'ai mis ça dans mon programme, mais le problème c'est qu'il n'a pas l'air de se connecter a ma BDD et donc rien ne se passe (pas même l'écriture du fichier). Par contre, il n'y aurait pas un prob au niveau de set rs = MyDb.Execute Requete ? Car la ligne est rouge .. Bizarre
morpheus83z
Messages postés59Date d'inscriptionmercredi 26 mai 2004StatutMembreDernière intervention19 août 2004 27 mai 2004 à 11:18
J'ai toujours mon soucis de connection avec ma base MySQL en local (pour le moment).
' Connection à une Base de donnée local & envoi du résultat
' d'une requête dans un fichier resultat_req.txt
Option Explicit
Public Function Main()
Dim MyDb As Database
Dim MyRecordset As Recordset
Dim Requete As String
Dim Requete2 As String
Dim var1 As String
MyDb = mysql_init(0)
If Not pMySQL = 0 Then
' Connection à la BDD euriview en root sans mot de passe / localhost (mode DAO)
Set MyDb = OpenDatabase("euriview", dbDriverNoPrompt, False, "ODBC;DSN=euriview;DATABASE=euriview;UID=root;PWD=")
Else
MsgBox "Connexion à la base de donnée impossible", _
vbCritical, "Erreur"
' On insère de nouvelles données dans la table utilisateur
Requete2 = "INSERT INTO utilisateur (idlogin,login,password,choix) VALUES ('', 'zxz', 'xzx', 'uiu')"
' On sélectionne les infos de la table utilisateur
Requete = "SELECT idlog,login, password, choix FROM utilisateur"
Set MyRecordset = MyDb.OpenRecordset(Requete)
' Fermeture de la BDD
mysql_close
Private Sub GenereWeb()
' Création d'un fichier resultat_req
Open "c:\resultat_req.txt" For Output As #1
' Récupération des données de la requête en clair dans le fichier texte
Do While Not MyRecordset.EOF
var1 = MyRecordset.Fields("idlog").Value & ","
var1 = var1 & MyRecordset.Fields("login").Value
Print #1, var1
var1 = ""
MyRecordset.MoveNext
Loop
Close #1
Call Main
Call GenereWeb
End Sub
End Function
J'ai essayé de commenter un peu le fichier même si ce n'est pas d'une difficulté extrème. Vous avez une idée pour trouver mon (mes ?) erreur(s) ?
morpheus83z
Messages postés59Date d'inscriptionmercredi 26 mai 2004StatutMembreDernière intervention19 août 2004 27 mai 2004 à 12:07
Tout à fait ! j'ai mélangé du DAO et de l'ADO ...
Voilà le programme final qui marche nickel, merci bcp pr ta précieuse aide :
Option Explicit
Public MyRecordset As Recordset
Public Sub Main()
Dim MyDb As Database
Dim Requete As String
Dim Requete2 As String
' Connection à la BDD euriview en root sans mot de passe / localhost (mode DAO)
Set MyDb = OpenDatabase("euriview", dbDriverNoPrompt, False, "ODBC;DSN=euriview;DATABASE=euriview;UID=root;PWD=")
' On insère de nouvelles données dans la table utilisateur
Requete2 = "INSERT INTO utilisateur (login,password,choix) VALUES ('zxz', 'xzx', 4)"
' On sélectionne les infos de la table utilisateur
Requete = "SELECT idlog,login, password, choix FROM utilisateur"
Set MyRecordset = MyDb.OpenRecordset(Requete)
MsgBox MyRecordset("idlog")
'MyDb.Execute Requete2
Call GenereWeb
End Sub
Private Function GenereWeb()
Dim var1 As String
' Création d'un fichier resultat_req
Open "c:\resultat_req.txt" For Output As #1
' Récupération des données de la requête en clair dans le fichier texte
Do While Not MyRecordset.EOF
var1 = MyRecordset.Fields("idlog").Value & ","
var1 = var1 & MyRecordset.Fields("login").Value & ","
var1 = var1 & MyRecordset.Fields("password").Value
Print #1, var1
var1 = ""
MyRecordset.MoveNext
Loop
Close #1