Connection a la base

Résolu
king_moez Messages postés 25 Date d'inscription samedi 21 octobre 2006 Statut Membre Dernière intervention 11 avril 2008 - 20 avril 2007 à 15:42
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 23 avril 2007 à 08:22
salut tout le monde
je veux etablir une connection avec l'ADODB , pouvez-vous me donner la fonction de connection a la base svp .
Merci d'avance

14 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
20 avril 2007 à 16:04
Salut,

Options Explicit

' Connection base de données
 Public CnxAdo As New ADODB.Connection

Private Function Connect()

    ' Choix du fournisseur ,ouverture Base de Données
     CnxAdo.Provider = "Microsoft.jet.OLEDB.4.0"
    
    ' Resultat de la fonction verif_cehemin_base
     CnxAdo.ConnectionString = App.Path & "\tabase.mdb"
      ' Ou
        'CnxAdo.ConnectionString = "C:\tabase.mdb"
               
    ' Ouvre la connection à la source
     CnxAdo.Open

End Function


A+
Exploreur


 
3
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
20 avril 2007 à 16:15
Salut,

Par contre pour l'utilisation de : App.path, il y a un petit truc à savoir(que l'on ma fait remarqué il y a pas trés longtemps), cela te renvoie le chemin d'où est lancé ton aplli... si tu le lance de C:, App.path renvois : "C:" est là ton aplli va planter, car dans la connexion on dit :
CnxAdo.ConnectionString = App.Path & "\tabase.mdb"

Donc on aura un problème de "", car le retour de App.path sera :
"C:\\tabase.mdb", et dans ce cas là, sa plante

Par contre si tu lances ton aplli d'un répertoire cela ne posera pas de problème

Si tu veux garder l'utilisation de App.path, tu devra vérifier avant le chemin d'où est lancée ton aplli, voici un exemple de vérif, peut-être pas optimisé :

Options Explicit

' Chemin Base
 Dim CheminBase As String
 Dim Chaine As String
 Dim Dernier_Carract As String

' Connection base de données
 Public CnxAdo As New ADODB.Connection

Private Function Connect()

    ' Choix du fournisseur ,ouverture Base de Données
     CnxAdo.Provider = "Microsoft.jet.OLEDB.4.0"
    
   ' Vérife chemin via fonction
     Verif_Chemin_Base

    ' Resultat de la fonction verif_cehemin_base
     CnxAdo.ConnectionString = CheminBase 
               
    ' Ouvre la connection à la source
     CnxAdo.Open

End Function

Private Function Verif_Chemin_Base()


    ' Présence et test ou pas de "" dans le cas
    ' d'un lancement dans ??:\, les ?? représente le lecteur
    ' Car app.path retournera toujours : ??\
       
       ' Donne la chaine retournée de app.path à ma variable
        Chaine = App.Path
       
       ' Prend le dernier carractère de ma variable chaine
        Dernier_Carract = Right(Chaine, 1)
    
       ' Condition suivant présence de ""
        If Dernier_Carract = "" Then
           CheminBase = App.Path & "TaBase.mdb"
        Else
           CheminBase = App.Path & "\TaBase.mdb"
        End If

End Function


A+
Exploreur


 
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
20 avril 2007 à 15:50
ConnectionString
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
20 avril 2007 à 15:53
Bonjour,

que veux tu faire car se connecter c'est un bien grand mot tu sais.

le type de base serait deja un debut ?
0

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

Posez votre question
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
20 avril 2007 à 15:57
Si tu te sens un peu debrouillard,

Dim conn as adodb.connection

Set conn = new adodb.connection

pour que ca compile n'oublie pas d'aller dans projet puis reference et cliquer sur Microsoft Active Data Object 2.8 library je crois.

Et regarde en effet la propriété ConnectionString de cet objet.
0
king_moez Messages postés 25 Date d'inscription samedi 21 octobre 2006 Statut Membre Dernière intervention 11 avril 2008
20 avril 2007 à 16:01
je veux exactement le code pour ouvrire une base , pour pouvoir manipuler les table . mais il me faut le code de connection , ou plus exactement d'ouverture de la base c tout
Et Merci
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
20 avril 2007 à 16:07
Je pars du principe que c'est une base access car tu ne m'as toujours pas dis le type de base

A toi de comprendre un peu par toi meme car cherche fais partie de l'apprentissage.

dim acn as ADODB.connection
dim rs as  ADODB.recordset

Set acn = New ADODB.connection
Set rs = New ADODB.recordset

acn.CursorLocation = adUseClient
acn.Open "Provider=Microsoft.Jet.OLEDB.4.0;;Data Source=" & Chemin_DataSource 'chemin de ta base

rs.CursorLocation = adUseClient
rs.Open "SELECT * FROM Nom_Table ", acn, adOpenDynamic, adLockOptimistic

remplace ce qu'il y a en gras.
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
20 avril 2007 à 16:09
Et voila de 1000, tu as droit a un cadeau?

Meme si c'est pas un but en soi, c'est bien quand meme.

Bravo, Darksidious 8492 LOL.

Pour le code, je me suis fais griller, bien joué. A notre ami de choisi ce qui lui plais comme synthaxe.
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
20 avril 2007 à 16:18
lol nicko11,  pour mon dix-millième message, j'aurai droit à un cadeau moi aussi ?
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
20 avril 2007 à 16:22
Salut,

Darksidious >> Grosse poignées de mains et les bons chiffres : 73 , 51

Lol...

A+
Exploreur

 
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
20 avril 2007 à 16:32
MDR,

je sais pas c'est toi l'admin, mais on pourra faire un referendum avec tous les membres de CS.
Je crois que j'aurais pas assez de ma vie entiere pour y arriver.

Quoique, que ca fait 1-2 mois que je suis parmi vous, et 270 messages. Je sais pas si je suis sur une bonne lancé.

D'ailleurs, je fais un petit detournement de forum 2s,

mais moi par exemple en ce moment au boulot, j'arrive a gérer VBFrance et mon taf perso, mais ca va plus etre le cas tres bientot.

Mais je me dis comment vous faites pour conciler les 2, car vous etes mega present sur le site. Moi c'est exceptionnelle car en ce moment c'est tranquille mais la respect a vous genre jrivet, exploreur, jmf, drikce06, motalino (j'en oublie certainement).

Moi, je vous tire mon chapeau les gars. A+ et bon WE.
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
21 avril 2007 à 20:46
Bonsoir à tous,

Moi je l'ai trouvé le "cadeau" pour Darksidious en avance certe...Mais trouvé ! Bon j'ai pas cherché bien loin!!!

Bon wekk à tous

A+
Exploreur

 
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
23 avril 2007 à 08:17
Désolé mais on ne le voit pas ce cadeau
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
23 avril 2007 à 08:22
t'inquiète, moi je le vois
0
Rejoignez-nous