Rubrik: Datenbanken · DAO | VB-Versionen: VB4, VB5, VB6 | 20.04.07 |
Tabellen aus Access-DB ausblenden (DAO) Wussten Sie, dass man durch Einsatz von DB-Properties ganze Tabellen aus einer Datenbank verschwinden lassen kann? | ||
Autor: Dieter Otter | Bewertung: | Views: 14.159 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Wie schafft man es, eine Datenbank-Tabelle für die Bearbeitung unter der MS-Access Oberfläche unsichtbar zu machen?
Hintergrund: In der Tabelle befinden sich sensible Daten, wie bspw. Registrier-Informationen, etc.
Diese Daten sollen vor den Augen der Anwender versteckt werden, um
Manipulationen vorzubeugen.
Durch den geschickten Einsatz der Datenbank-Properties lässt sich eine Tabelle wie folgt unsichtbar machen. Unsichtbar zumindest für MS-Access.
Dim oDb As DAO.Database ' Datenbank öffnen (ggf. Passwort angeben) Set oDB = DBEngine.OpenDatabase("DBName", False, False, ";pwd=Passwort") ' Attribut "unsichtbar" setzen oDb.TableDefs("Tabelle").Attributes = dbHiddenObject ' Datenbank schließen oDb.Close
Dieser Code fügt den Properties eine einfache 1 hinzu. Das genügt. Unter MS-Access ist die Tabelle ab sofort nicht mehr sichtbar.
ACHTUNG!
Wird eine Datenbank, die unsichtbare Tabellen enthält, komprimiert, werden die ausgeblendeten Tabellen autom. und kommentarlos gelöscht!
Die sollten vor der DB-Komprimiereung also unbedingt die ausgeblendeten Tabellen vorher wieder einblenden:
... ' Attribut "unsichtbar" entfernen With oDb.TableDefs("Tabelle") .Attributes = (.Attributes And Not dbHiddenObject) End With ...