Salut à tous.
Code VB6, base ACCESS 97
Pour des besoins de tests de performance sur les bases, je suis en train de faire un petit utilitaire qui doit éclater une base access 97 existante avec plus d'une centaine de tables, en autant de base avec chacune une des tables de la base source.
J'utilise le code suivant :
Code vb6 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Set bdsrc = DBEngine.Workspaces(0).OpenDatabase(cheminbase & "mabasesource.mdb") For Each tb In bdsrc.TableDefs If (tb.Attributes = 0) And (tb.Name <> "") Then ReDim Preserve tbnames(UBound(tbnames) + 1) tbnames(UBound(tbnames)) = tb.Name End If Next Dim acApp As Access.Application Set acApp = New Access.Application acApp.OpenCurrentDatabase cheminbase & "mabasesource.mdb" For i = LBound(tbnames) + 1 To UBound(tbnames) Set bddest = DBEngine.CreateDatabase(cheminbase & tbnames(i) & ".mdb", dbLangGeneral, dbVersion30) bddest.Close Call acApp.DoCmd.TransferDatabase(acExport, "Microsoft Access", cheminbase & tbnames(i) & ".mdb", actable, tbnames(i), tbnames(i)) Next
Lorsque je tente d'ouvrir les bases ainsi générées, je me ramasse 2 messages d'erreur
puisImpossible de lire les enregistrements; pas d'autorisation de lecture sur 'MSysObjects'
Sur la base source, j'ai un fichier system.mdw. je précise que je ne maitrise pas l'utilisation de ce fichier.Impossible de lire les enregistrements; pas d'autorisation de lecture sur 'MSysACEs'
J'imagine que, sur les bases créées, je dois renseigner, ou copier depuis la base source, quelque chose par rapport à ce fichier mdw ?
Partager