Vielleicht haben viele Freunde, die Access verwenden, die integrierten Tabellen des Access-Systems noch nie geöffnet. Dieser Artikel kann Ihnen helfen, die integrierten Tabellen des Systems kurz zu verstehen.
Programmcode
<%sqlcmd="Name aus [msysobjects] auswählen, wobei Typ=1 und Flags=0"%>
Sie können diese Anweisung verwenden, um alle Tabellen in der Access-Datenbank abzurufen. Sie müssen jedoch die Berechtigung zum Lesen der MSysObjects-Tabelle festlegen. Andernfalls wird die Fehlermeldung „Datensätze können nicht gelesen werden; keine Berechtigung zum Lesen von Daten auf ‚MSysObjects‘“ angezeigt.
Office 2003-Einstellungen: Extras->Optionen->Ansicht->Ausgeblendete Objekte und Systemobjekte überprüfen. Extras->Sicherheit->Benutzer- und Gruppenberechtigungen, wählen Sie MSysObjects im Objektnamen aus und legen Sie dann seine Leseberechtigung in den Berechtigungen fest.
Office 2007-Einstellungen: Klicken Sie auf das Symbol in der oberen linken Ecke -> Zugriffsoptionen -> Aktuelle Datenbank -> Navigation -> Navigationsoptionen -> Aktivieren Sie Ausgeblendete Objekte anzeigen, um Systemobjekte anzuzeigen. Registerkarte „Datenbanktools“ -> „Benutzer und Berechtigungen“ -> „Benutzer- und Gruppenberechtigungen“, wählen Sie die Tabelle als Objekttyp, wählen Sie „MSysObjects“ als Objektnamen und aktivieren Sie dann die Berechtigung „Daten lesen“.
Es gibt eine andere Möglichkeit, alle Tabellen in zu lesen Access-Datenbank:
Programmcode
<%
set rs=conn.openSchema(20) gibt ein Recordset-Objekt zurück, das Schemainformationen enthält
rs.filter="table_type='table'''Filtert Datentabellen, deren Tabellentyp der Tabellentyp ist, und andere Typen sind im System integrierte Tabellen
tun, während nicht rs.eof
Response.write(rs("TABLE_NAME"))' Verwenden Sie den Recordset-Datensatz, um die Daten mit dem Spaltennamen Tabellenname abzurufen
Antwort.Write("<br />")
rs.movenext:loop
%>