Show Tables
2 отговора
209 прегледа
Show Tables
Някой има ли представа дали в Access има заявка, която връща имената на всички таблици в базата, подобно на show tables в MySQL?
Целта оправдава средствата
Целта оправдава средствата
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
%>






Надрасках ти набарзо достатъчно ясен пример. 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
%>
Re: Show Tables
Мерси много за отговора, оказа се, че в самата база има таблица, която съдържа имената на другите таблици и минах метър 
.
Иначе примерчето си го бива - пълен dump на таблиците в базата
.
Целта оправдава средствата
Иначе примерчето си го бива - пълен dump на таблиците в базата
Целта оправдава средствата