asphelper.de - Tipps & Skripts - Alle Tabellen einer Datenbank anzeigen

Link: Wichtiger Hinweis in eigener Sache!


 Autor: Klaus Keller Erstellt am: 2002-10-31  Geändert am: 2004-03-29 Aufrufe: 16691 


 << Vorheriger Tipp Nächster Tipp >>



Tipp 19: Alle Tabellen einer Datenbank anzeigen



Mit diesem Tip möchte ich Ihnen aufzeigen, wie Sie ohne Veränderungen in der Datenbank alle Tabellen in einer Access-Datenbank auflisten können. Zuerst einmal ein Programm, welches alle eigene Tabellen aufzeigt:
1   
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<hr><b>Erstellte Tabellen (keine Systemtabellen):</b><hr><%

Public strConn, rs, Conn

set Conn = Server.CreateObject("ADODB.Connection")
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
          Server.MapPath("~db\Test.mdb")

Conn.ConnectionString = strConn
Conn.CursorLocation = adUseClient
Conn.Open

Set rs = Conn.OpenSchema(adSchemaTables)
Do while not rs.EOF
  If UCase(rs("TABLE_TYPE")) = "TABLE" Then
    Response.Write(rs("TABLE_NAME") & "<br />")
  End If
  rs.MoveNext
Loop

rs.Close
Conn.Close
set rs = nothing
set Conn = nothing
%>


Was aber, wenn man auch die Views (Abfrage) auch noch darstellen möchte? Alle Tabellen, inkl. den Access-Systemtabellen können mit dem nachfolgendem Programm sortiert dargestellt werden:
1   
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<%
Public strConn, rs, Conn, TabellenTyp

set Conn = Server.CreateObject("ADODB.Connection")
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
          Server.MapPath("~db\Test.mdb")

Conn.ConnectionString = strConn
Conn.CursorLocation = adUseClient
Conn.Open
  
Set rs = Conn.OpenSchema(adSchemaTables)
rs.sort = "TABLE_TYPE ASC"
Do while not rs.EOF
  If UCase(rs("TABLE_TYPE")) = UCase(TabellenTyp) Then
    Response.Write(rs("TABLE_NAME") & "<br />")
  Else
    TabellenTyp = rs("TABLE_TYPE")
    Response.Write("<hr><b>" & TabellenTyp & "</b><hr>")
    Response.Write(rs("TABLE_NAME") & "<br />")
  End If
  rs.MoveNext
Loop
rs.Close
Conn.Close
set rs = nothing
set Conn = nothing
%>


Wenn Sie diese 2 Skript ausführen, kann es vorkommen, daß Sie eine Fehlermeldung erhalten, diese Fehlermeldung mit dem Fehlercode 800a0bb9 kann z.B. so lauten:
Die Anwendung verwendet Argumente, die vom falschen Typ, außerhalb des Gültigkeitsbereichs oder miteinander in Konflikt stehend sind.

Beispiel für den Fehler:
Conn.CursorLocation = adUseClient
adUseClient war kein Wert zugeordnet, diesen Fehler können Sie ganz einfach beseitigen:
Const adUseClient = 3
Const adSchemaTables = 20




 << Zum vorherigen Tipp 18:
Email-Adresse prüfen, die zweite

 Zum nächsten Tipp 20 >>
Ein Kontaktformular

top top
© Copyright By Klaus Keller, 2001-2008 - Alle Rechte vorbehalten.