Recorrer cualquier tabla

A veces, sobre todo si se trabaja en grupo, no sabemos a ciencia cierta qué campos tiene una tabla, o el nombre de ellos. O simplemente queremos mostrar toda una tabla entera para editarla vía web y ahorrarnos mucho código. Para hacer esto, podemos utilizar un par de propiedades de la colección Fields:

rs.Fields.Count -- devuelve el nº de campos de un registro.
rs.Fields(i).Name -- devuelve el Nombre del campo i-ésimo del registro.
rs.Fields(i) -- devuelve el contenido del campo i-ésimo.

Con estas tres propiedades, podemos hacer un sencillo bucle FOR que recorra la tabla entera.
<%
Dim oConn, SQL, rs, I

set oConn=...
oConn.Open "...

SQL="SELECT * FROM Tabla;"

rs.Open SQL, oConn

Response.Write("<TABLE BORDER=""1"">")
Response.Write("<TR>")
' Recorremos los nombre de los campos. Restamos uno porque los índices empiezan en 0
for I=0 to rs.Fields.Count-1

Response.Write("<TD>"&rs.Fields(I).Name&"</TD>")

next
' Ahorra recorremos el recordset creando una fila nueva por cada registro
do until rs.EOF

Response.Write("<TR>")
for I=0 to rs.Fields.Count-1
Response.Write("<TD>"&rs.Fields(I)&"</TD>")
next
rs.MoveNext

loop
Response.Write("</TABLE>")

'Limpiamos objetos
rs.Close
...
%>


¡Ya está! Hemos pasado una tabla cualquiera a HTML sin preocuparnos de los nombres de los campos ni del nº de ellos. Podéis verlo como un script genérico para mostrar tablas de una base de datos en una página web.