Ouvrir et afficher différentes BD Access

Bogorno Messages postés 16 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 19 avril 2007 - 1 avril 2007 à 17:35
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 2 avril 2007 à 08:06
Bonjour,
Comment fait-on pour ouvrir et afficher différentes BD Access dans la même application.
Je m'explique:
Dans un répertoire 'Travail' j'ai 3 BD différentes mais qui ont le même nom de table et les mêmes colonnes au même endroits. Seul les données sont différentes.
Travail -------- 1.mdb (table name = Contact)
              \-----  2.mdb (table name = Contact)
               \----  3.mdb (table name = Contact)
Je souhaite pouvoir en choisir une, l'ouvrir et l'afficher puis travailler dedans et la sauvegarder. Et recommencer avec une autre et ainsi de suite.  J'ai beau essayer je n'y arrive pas...
Merci de votre aide.
Rita

Private
Sub LoadToolStripMenuItem_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles LoadToolStripMenuItem.Click

Dim OpenDialog
As
New OpenFileDialog

'Set the Save Dialog properties
With OpenDialog.Filter "MS Access Database (*.mdb)|.mdb|All files (.*.)|*.*".FilterIndex 1
.Title "Open a BD".RestoreDirectory

False

End
With

'Show the Open dialog and if the user clicks the Open button,

'load the file

If OpenDialog.ShowDialog = Windows.Forms.DialogResult.OK
Then

Dim fullPath
As
String

Dim con
As
New OleDb.OleDbConnection

Dim ds
As
New DataSet

Dim da
As OleDb.OleDbDataAdapter

Dim sql
As
String

'Read the contents of the filefullPath = OpenDialog.FileName

Dim DBName
AsString System.IO.Path.GetFileNameWithoutExtension(fullPath)con.ConnectionString

"PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source = " & fullPath

con.Open()
sql "SELECT * FROM Contact"da

New OleDb.OleDbDataAdapter(sql, con)da.Fill(ds, DBName)

con.Close()

End
If

'Clean upOpenDialog.Dispose()

OpenDialog =

Nothing

End
Sub

1 réponse

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
2 avril 2007 à 08:06
salut,
ne pas travailler "objet" en DotNet c'est dommage non?

ce que je veux dire.... c'est fait une classe pour ta connection accès ouverture fermeture enregistrements etc...., une autre pour la récupération maj des data (communication), héritant de la classe d'accès.

il te suffira d'instancier 3 fois la classe de communication pour accéder à tes 3 bases distinctes
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
Rejoignez-nous