none
Access-Datenbank-Datei mit VB.NET komprimieren RRS feed

  • Frage

  • Ich hatte bisher mit VB6 gearbeitet und damit die Access-Datenbank nach dem Schließen so komprimiert (damit diese nicht immer größer wird):

        Dim ADO_JRO As New JRO.JetEngine
        Dim DBOriginal As String
        Dim DBTemp As String
        Dim DB1 As String
        Dim DB2 As String
        DBOriginal = ...
        DBTemp = ...
        DB1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & DBOriginal
        DB2 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & DBTemp
        ADO_JRO.CompactDatabase DB1, DB2
        Set ADO_JRO = Nothing
        Kill DBOriginal
        FileCopy DBTemp, DBOriginal
        Kill DBTemp

    ... und hatte dafür die Komponente "Microsoft ADO Data Control 6.0" eingebunden.

    Da ich jetzt mit VB.Net arbeite suche ich hier nach einer ähnlichen Lösung. Habe leider bisher nichts gefunden.

    Dienstag, 3. September 2019 08:54

Antworten

  • Hallo Bernd,

    füg einen Verweis auf die COM Library "Microsoft Jet and Replication Objects 2.6 Library" in deinem Projekt ein und stell es auf x86 (32 Bit).

    Dim Provider               As String
    Dim SourceDatabase         As String
    Dim TargetDatabase         As String
    Dim Path                   As String
    Dim SourceConnectionString As String
    Dim TargetConnectionString As String
    
        Provider       = "PROVIDER=Microsoft.Jet.OLEDB.4.0;"
        SourceDatabase = "source.mdb"
        TargetDatabase = "target.mdb"
        Path           = "X:\Ordner\"
    
        SourceConnectionString = Provider & "DATA SOURCE=" & Path & SourceDatabase & ";"
        TargetConnectionString = Provider & "DATA SOURCE=" & Path & TargetDatabase & ";"
    
    Dim JetEngine As JRO.JetEngine
        JetEngine = New JRO.JetEngine()
        JetEngine.CompactDatabase( SourceConnectionString, TargetConnectionString )
        JetEngine = Nothing


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET (2001-2018)
    https://www.asp-solutions.de/ - IT Beratung, Softwareentwicklung, Remotesupport

    • Als Antwort vorgeschlagen Florian Haupt Dienstag, 3. September 2019 10:42
    • Als Antwort markiert Bernd Michael Dienstag, 3. September 2019 11:42
    Dienstag, 3. September 2019 09:13
    Moderator