Problem mit OleDB

LordDeath

Erfahrenes Mitglied
Hi

Ich möchte eine Access Datenbank komprimieren und reparieren (den Menüpunkt in Access ausführen) und ich hab keine Ahnung wie ich das machen soll !

Zur Zeit arbeite ich mit OleDB ! In VB gibt es eine Methode die heißt CompactDatabase aber ich habe keine Ahnung ob das DAO ADO oder irgendeine Andere Schnittstelle ist !

Kann mir da jemand sagen wie ich das machen kann ?

DarkGreetinx LordDeath
 
Ich habe jetzt herausgefunden das es irgendwie mit ADOX gehen soll hab aber keinen Plan davon

Kann mir jemand helfen ?

DarkGreetinx LordDeath
 
Hallöchen!

Code:
Dim varDB As JRO.JetEngine
varDB.CompactDatabase(varDBString_Source, varDBString_Dest)

Das Beispiel ist jetzt zwar für VB, ist aber sicherlich leicht auf C# umzubauen. Du müßtest varDBString_Source definieren (das ist die Quelldatenbank, also die die Du komprimieren willst) und varDBString_Dest (das ist der String wo die komprimierte DB gespeichert werden soll). Nach dem Komprimieren hast Du zwei Datenbanken, man müßte dann die alte DB löschen und die neue DB umbenennen.
varDBString_Source und varDBString_Dest müssen den kompletten Connection-String beinhalten, den Du auch benutzt um Daten abzurufen, der Pfad zur Datei reicht also nicht aus!

Du mußt allerdings vorher einen Verweis hinzufügen und zwar den:

"Microsoft Jet and Replication Objects 2.x Library" (den findest Du unter "COM")

MfG
..::Six Dark::..
 
Also es Funktioniert bestens ich poste hier mal den C# Code

string varDBString_Source = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\test.mdb";
string varDBString_Dest = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\test_komprimiert.mdb";

JRO.JetEngine varDB = new JRO.JetEngine();
varDB.CompactDatabase(varDBString_Source, varDBString_Dest);

Vorher musst du noch im Solution Explorer die Reference
Microsoft Jet and Replication Objects 2.6 ... hinzufügen und dann klappt das bei mir einwandfrei !

Ihr müsst dann nur noch die unkomprimierte löschen und die komprimierte umbenennen !

DarkGreetinx LordDeath
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück