Access-Datenbanken haben eine "kleine" Eigenart an sich: Werden viele Datensätze hinzugefügt, oder auch viele Datensätze aus der Datenbank gelöscht, wächst die Dateigröße der Datenbank-Datei extrem an. Um die Datenbank-Größe wieder zu reduzieren stellt die Jet-Engine eine entsprechenden Befehl bereit: CompactDatabase Public password As String ' Datenbank komprimieren Public Function dbCompact(ByVal dbName As String) As Boolean Dim Quelle As String On Local Error GoTo dbCompact_Error dbCompact = False ' Prüfen, ob Datei existiert If Dir(dbName) <> "" Then Screen.MousePointer = 11 Quelle = Left$(dbName, InStrRev(dbName, ".") - 1) ' Datenbank komprimieren (ohne Passwort) Err.Number = 0 CompactDatabase dbName, Quelle & ".$$$" ' Fehler: Datenbank passwortgeschützt While Err.Number = 3031 ' Dialog zur Eingabe des Passworts aufrufen Screen.MousePointer = 0 ' Das Passwort wird in der öffentlichen Variablen ' password gespeichert frm_password.Show 1 Screen.MousePointer = 11 ' Neuer Versuch mit Passwort-Angabe Err.Number = 0 CompactDatabase dbName, Quelle & ".$$$", , , _ ";pwd=" & password Wend On Local Error GoTo 0 ' Originaldatei löschen Kill dbName ' Umbenennen der neuen Datei in die Originaldatei Name Quelle & ".$$$" As dbName Screen.MousePointer = 0 MsgBox "Komprimierung erfolgreich abgeschlossen!", 64, _ "Information" dbCompact = True Else MsgBox "Datenbank " & dbName & " nicht gefunden!", _ vbCritical, "Fehler" End If Exit Function dbCompact_Error: If Err.Number = 3031 Then Resume Next If Err.Number <> 32755 Then MsgBox Err.Description & " (" & Err.Number & ")", _ vbCritical, "Fehler" End If Screen.MousePointer = 0 End Function Alles, was Sie jetzt noch selber machen müssen ist das Bereitstellen eines Formulars für die Passwort-Eingabe. Beim Schließen dieses Formulars teilen Sie der aufrufenden Form das Passwort dann mit: frmMain.Password = txtPassword.Text Dieser Tipp wurde bereits 15.296 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats Dietrich Herrmann Einsatz einer DimmingForm Es wird eine Form vorgestellt, mit deren Hilfe man den gesamten Bildschirm auf verschiedene Arten mit transparenter Farbe überdecken und nur eine eigene Form im Vordergrund zeigen kann. sevWizard für VB5/6 ![]() Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) |
||||||||||||||||
|
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |
|||||||||||||||||



Datenbanken komprimieren mit DAO


