Show Tables

2 отговора 209 прегледа
#1

Show Tables

Някой има ли представа дали в Access има заявка, която връща имената на всички таблици в базата, подобно на show tables в MySQL?

Целта оправдава средствата
Отговор
в отговор на Lupi #2

Re: Show Tables

Малко късно, ама ето го решението. Става чрез ADO.
Надрасках ти набарзо достатъчно ясен пример. IMHO.



<%
OPTION EXPLICIT
DIM Conn, DBName, RS, X, TableName, adSchemaTables, rsSchema

DBName="\test\users.mdb"
adSchemaTables=20

SET Conn=Server.CreateObject("ADODB.Connection")
Conn.Provider="Microsoft.Jet.OLEDB.4.0"
Conn.Open Server.MapPath(DBName)

SET rsSchema = Conn.OpenSchema(adSchemaTables)

DO UNTIL rsSchema.EOF
IF Trim(rsSchema("TABLE_TYPE")) = "TABLE" THEN
SET RS=Server.CreateObject("ADODB.Recordset")
RS.Open "SELECT * FROM " &rsSchema("TABLE_NAME"), Conn
Response.Write("<CENTER><B>"&rsSchema("TABLE_NAME") & "</B></CENTER>")%>
<TABLE border="1" width="100%">
<TR><%
FOR EACH X IN rs.Fields
Response.Write("<TH>" & X.Name & "</TH>")
NEXT%>
</TR><%
DO UNTIL rs.EOF%>
<TR><%
FOR EACH X in rs.Fields%>
<TD><%=x.Value%></TD><%
NEXT
rs.MoveNext%>
</TR><%
LOOP%>
</TABLE>
<BR><%
END IF
rsSchema.MoveNext
LOOP
RS.Close
rsSchema.Close
Conn.Close
%>


Отговор
в отговор на ..:: StanProg ::.. #3

Re: Show Tables

Мерси много за отговора, оказа се, че в самата база има таблица, която съдържа имената на другите таблици и минах метър .
Иначе примерчето си го бива - пълен dump на таблиците в базата .

Целта оправдава средствата
Отговор