WEB LISTING 1: The RenderTableAttributes Procedure Sub RenderTableAttributes(strTableName, oConn) Dim strTemp, strQuery Dim oRsColumnList '--- Get the list of columns/attributes/fields. strQuery = " SELECT * FROM INFORMATION_SCHEMA.COLUMNS " + _ " WHERE TABLE_NAME='" + strTableName + "'" + _ "ORDER BY ORDINAL_POSITION" Set oRsColumnList = oConn.Execute(strQuery) '--- Output the table header. Response.Write("") Response.Write("Table: " + strTableName + "
") Response.Write("
") Response.Write("
Attributes") Response.Write("") Response.Write("") Response.Write("") Response.Write("") Response.Write("") Response.Write("") Response.Write("") Response.Write("") '--- Loop to parse to the list of columns. While Not oRsColumnList.EOF '--- Output the details of each column. Response.Write("") Response.Write("") Response.Write("") Response.Write("") strTemp = oRsColumnList("DATA_TYPE") If (Not IsNull(oRsColumnList("CHARACTER_MAXIMUM_LENGTH"))) Then strTemp = strTemp + " (" + CStr(oRsColumnList("CHARACTER_MAXIMUM_LENGTH")) + ")" Else strTemp = strTemp + " (" + CStr(oRsColumnList("NUMERIC_PRECISION")) + ")" End If Response.Write("") If (Not IsNull(oRsColumnList("COLUMN_DEFAULT"))) Then Response.Write("") Else Response.Write("") End If Response.Write("") '--- Move to the next column. oRsColumnList.MoveNext Wend '--- End the table for columns. Response.Write("
Serial NoField NameNullable?DataType/WidthDefault
" + CStr(oRsColumnList("ORDINAL_POSITION")) + "" + oRsColumnList("COLUMN_NAME") + "" + oRsColumnList("IS_NULLABLE") + "" + strTemp + "" + oRsColumnList("COLUMN_DEFAULT") + " 
") Set oRsColumnList = Nothing End Sub