Procedure de connexion

magicientarik Messages postés 41 Date d'inscription lundi 10 septembre 2007 Statut Membre Dernière intervention 13 avril 2011 - 16 sept. 2007 à 02:23
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 16 sept. 2007 à 05:09
salut
j'ai créer un module que je met dedant ma procedure de connexion
je l'ecrit de cette façon :
code Vb:

Sub connexion(rs As ADODB.Recordset)
Dim conn As ADODB.Connection
    Set conn = New ADODB.Connection 
    Dim rs As ADODB.Recordset
    Set rs = New ADODB.Recordset   
    conn.CursorLocation = adUseClient
    conn.ConnectionString = "DRIVER={MySQL Odbc 3.51 Driver};" _
            & "SERVER=127.0.0.1;" _
           & "DATABASE=mabase;" _
            & "UID=root;" _
            & "PWD=pass;" _
            & "OPTION=" & 1 + 2 + 8 + 32 + 2048 + 16384
    conn.Open
End Sub
et je fait l'appeler comme ceci
connexion( req)  ' req c'est mon ADODB.Recordset
voila l'erreur qui s'affiche lors de l'execution " un objet et requis" et marque l'erreur sue l'appel de la procedure
svp si vous pouvez m'aidez
Cordialement

2 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
16 sept. 2007 à 05:07
Salut
La déclaration de ta Sub inclut un objet ADODB "rs"
Or, dans cette sub, tu redéfinis un autre objet du même nom --> Ca ne passera pas

Puisque ta Sub ne fait que la connexion à ta DB, pourquoi définir un RecordSet ?
C'est inutile pour l'instant.

PS : Coup de chance que "Connexion" s'écrive avec un X en fr, parce que si tu l'avais écrit avec un C (nom de la Sub), VB n'aurait pas aprécié (mot réservé)

Sub Connexion()
Dim conn As ADODB.Connection
    Set conn = New ADODB.Connection 
    conn.CursorLocation = adUseClient
   ...

Et l'appel, tout simplement
   Call Connexion

Oups, je n'avais pas vu :
L'objet Conn est dimensionné dans ta Sub.
Dès que sera ressorti de la Sub, cet objet sera détruit.
Il faut déclarer le Dim Conn dans la partie Déclaration de ta forme (ou d'un module en remplaçant Dim par Public)
De cette manière, l'objet Conn sera utilisable partout dans ta forme (ou dans ton projet si tu l'as mis dans un module)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
16 sept. 2007 à 05:09
PS : Charge une ou deux sources qui parlent de MySQL (moteur de recherche parmi les Codes)
Tu verras comment faire et les pièges à éviter
0
Rejoignez-nous