Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CONNEXION "A CHAUD" SUR UNE AUTRE BASE DE DONNÉES


Information sur la source

Description

Ce code permet de se connecter à une autre base de données (type SQL ou ACCESS) sans avoir à quitter l'application
 

Source

  • Le Sub Main du module general pour la connexion initiale
  • Sub Main()
  • 'Je verifie si c'est le premier lancement
  • 'le fichier video.ini contient l'info du type de base
  • 'ici 1-->Access 2-->Sql
  • Open "c:\program files\videotheque\video.ini" For Input As #1
  • Line Input #1, typebase
  • typedebase = Mid(typebase, 17, 18)
  • Line Input #1, NomdeBase
  • NomdeBase = Mid(NomdeBase, 13, 18)
  • 'Line Input #1, Majorite
  • 'Majorite = Mid(Majorite, 13, 18)
  • Close
  • If NomdeBase = "" Then NomdeBase = "films.mdb"
  • If CnImport.State = adStateOpen Then CnImport.Close: Set CnImport = Nothing
  • CnImport.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  • "Data Source=c:\Program Files\Videotheque\" & NomdeBase
  • Select Case typedebase
  • Case 1
  • frmconnexion.typeconnexion = "Access"
  • If Cn.State = adStateOpen Then Cn.Close: Set Cn = Nothing
  • Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  • "Data Source=c:\Program Files\Videotheque\" & NomdeBase
  • Case 2
  • frmconnexion.typeconnexion = "Sql"
  • If Cn.State = adStateOpen Then Cn.Close: Set Cn = Nothing
  • With Cn
  • .Provider = "SQLOLEDB"
  • .ConnectionString = "datasource=DSN=FILMS;" & _
  • "server=; user id=sa;" & _
  • "initial catalog=FILMS"
  • .Open
  • End With
  • With cmd
  • .ActiveConnection = Cn
  • .CommandType = adCmdText
  • End With
  • Case Else
  • frmconnexion.typeconnexion = "Access"
  • Open "c:\program files\videotheque\video.ini" For Output As #1
  • Print #1, "typeconnexion = 1"
  • Print #1, "Nomdebase=" & NomdeBase
  • Close
  • End Select
  • et le code dans la fenetre "connexion"
  • frmconnexion.typeconnexion = "Access"
  • If Cn.State = adStateOpen Then Cn.Close: Set Cn = Nothing
  • Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  • "Data Source=c:\Program Files\Videotheque\" & File1.FileName
  • NomdeBase = File1.FileName
  • frmgestion.Caption = " Accès Principal " & " Type de Base de Données : " & frmconnexion.typeconnexion & " --- Nom de la Base : " & NomdeBase
  • ' y a du code entre bien sur mais il ne concerne plus la connexion donc je ne le mets pas
  • Open "c:\program files\videotheque\video.ini" For Input As #1
  • Line Input #1, typedebase
  • typedebase = Mid(typedebase, 17, 18)
  • Line Input #1, NomdeBase
  • NomdeBase = Mid(NomdeBase, 13, 18)
  • Close
  • Select Case typedebase
  • Case 1
  • typeconnexion = "Access"
  • 'NomdeBase = "Films.mdb"
  • Case 2
  • typeconnexion = "Sql"
  • End Select
Le Sub Main du module general pour la connexion initiale
Sub Main()
'Je verifie si c'est le premier lancement
'le fichier video.ini contient l'info du type de base
'ici 1-->Access 2-->Sql
Open "c:\program files\videotheque\video.ini" For Input As #1
Line Input #1, typebase
typedebase = Mid(typebase, 17, 18)
Line Input #1, NomdeBase
NomdeBase = Mid(NomdeBase, 13, 18)
'Line Input #1, Majorite
'Majorite = Mid(Majorite, 13, 18)
Close
If NomdeBase = "" Then NomdeBase = "films.mdb"

If CnImport.State = adStateOpen Then CnImport.Close: Set CnImport = Nothing
CnImport.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=c:\Program Files\Videotheque\" & NomdeBase

Select Case typedebase
    Case 1
        frmconnexion.typeconnexion = "Access"
        If Cn.State = adStateOpen Then Cn.Close: Set Cn = Nothing
        Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source=c:\Program Files\Videotheque\" & NomdeBase
    Case 2
        frmconnexion.typeconnexion = "Sql"
        If Cn.State = adStateOpen Then Cn.Close: Set Cn = Nothing
        With Cn
            .Provider = "SQLOLEDB"
            .ConnectionString = "datasource=DSN=FILMS;" & _
                                "server=; user id=sa;" & _
                                "initial catalog=FILMS"
            .Open
        End With
        With cmd
            .ActiveConnection = Cn
            .CommandType = adCmdText
        End With
    Case Else
        frmconnexion.typeconnexion = "Access"
        Open "c:\program files\videotheque\video.ini" For Output As #1
        Print #1, "typeconnexion = 1"
        Print #1, "Nomdebase=" & NomdeBase
        Close
End Select

et le code dans la fenetre "connexion"

frmconnexion.typeconnexion = "Access"
        If Cn.State = adStateOpen Then Cn.Close: Set Cn = Nothing
        Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source=c:\Program Files\Videotheque\" & File1.FileName
        NomdeBase = File1.FileName
        frmgestion.Caption = "  Accès Principal " & " Type de Base de Données : " & frmconnexion.typeconnexion & " --- Nom de la Base : " & NomdeBase

' y a du code entre bien sur mais il ne concerne plus la connexion donc je ne le mets pas

Open "c:\program files\videotheque\video.ini" For Input As #1
        Line Input #1, typedebase
        typedebase = Mid(typedebase, 17, 18)
        Line Input #1, NomdeBase
        NomdeBase = Mid(NomdeBase, 13, 18)
        Close
        Select Case typedebase
            Case 1
                typeconnexion = "Access"
                'NomdeBase = "Films.mdb"
            Case 2
                typeconnexion = "Sql"
        End Select

 
        

Conclusion

Les informations concernant le type de Base (Access ou SQL)et ke nom de la derniere base utilisée sont stockees dans le fichier video.ini
Une fenêtre permet d'avoir toutes les bases access dans le répertoire courant. Un bouton valider contient les deux derniers parties du code
 

Commentaires et avis

signaler à un administrateur
Commentaire de Renfield le 22/01/2007 13:02:08 administrateur CS

Pourquoi aurait-on besoin de relancer l'application ?

on ne fait qu'ouvrir une autre connexion vers une BDD...

signaler à un administrateur
Commentaire de asimengo le 23/01/2007 11:31:32

Le titre, no comprendo.
Expliques claro ce que tu veux ressortir par ta source, car comme Renfield le signale il s'agit d'une simple connexion vers une BDD, le terme "A CHAUD", ???

signaler à un administrateur
Commentaire de capricorne83 le 23/01/2007 12:40:28

En Fait j'ai ecrit ce truc la pour une copine qui utilise plusieurs bases de donnees dont je ne connaissais pas les noms. une fenêtre liste les bases présentes dans le répertoire de l'application et met à jour le fichier .ini pour définir la base par défaut.

signaler à un administrateur
Commentaire de 13emevirus le 16/06/2008 10:49:18

Peut on utiliser ce code pour se connecter a une autre base de donnees access ?

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

connexion à une base de donnees [ par delphi ] je veux pouvoir ouvrir une bd soit access soit dbase je vais chercher mon chemin de ma base dans ma formmon code est ainsidim mabase as adod.connectio Connexion à une base de donnees sur un serveur viz VB 6.0 [ par gridda ] J'ai un probleme j'ai fait une petit application avec VB 6.0, mais je vaux partagé cette base de donnees avec plusieurs utilisateurs. Le parincipe c'e Access VB : connexion a la base de donnees [ par pioute ] Bonjour a tous,Je debute en VB, et je n'arrive pas a me connecter a la base de donnees. La synthaxe Dim Db as database ne marche pas. Pourquoi ca ne m Connexion a une base de donnees sur Internet (Ftp) [ par jolazoule ] Est-ce possible en VB de se connecter et de passer une requête à une base de données située sur un FTP (Internet)?Comment fait-on ?Merci !!! problème de connexion a la base de donnees avec lien relatif!! [ par projetmarie ] Bonjour &#224; vous!j ai donc un probl&#232;me: lorsque je fais ca: Dim MyConnexion As OleDbConnection = <FONT col connexion base de donnees AS400 [ par YLI20 ] Bonjour,&nbsp;je sui tre embeter je ne trouve le moyen de me conecter a une biblioth&#232;que de l AS400.comment se connecter a une biblioth&#232;que aide [ par tranca11 ] slt tou l monde .  je suis un étudiant en informatique de gestion je suis entrain de faire un projet de  fin d étude .( une application de gestion d a connexion vb6 avec base de donnees [ par anisby ] bonjour,je veux faire une connexion entre VB6 et base de données.je suis débutant,S.V.P,aidez moi et donnez moi une réponse très très claire vu mes co connexion VB6-MySQL [ par simafst ] Salut, J'ai une base de données à faire à l'aide de mysql et je veux bien récupérer les données de cette base à partir du VB6 . Don je veux savoir com Etablir une connexion avec une base de données dans Mysql distante [ par francejulia ] Bonjour Je travaille sur un projet sur la reéalistaion d'un logiciel de gestion commerciale; et j'utilise une architecture client/serveur. J'utilise


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,406 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.