
Ado Field in ASP
In Classic ASP, when working with ADO Recordsets, a field represents a column from your database query result.
? Accessing ADO Fields in ASP
You access fields in a recordset using either:
rs("FieldName")
or
rs.Fields("FieldName").Value
Both return the value of the column for the current row.
? Example: Display Fields from a Recordset
<%Dim conn, rs, sqlSet conn = Server.CreateObject("ADODB.Connection")conn.Open "Provider=SQLOLEDB;Data Source=SERVER;Initial Catalog=DB;User ID=USER;Password=PASSWORD;"sql = "SELECT UserID, Name, Email FROM Users"Set rs = conn.Execute(sql)Do Until rs.EOF Response.Write "ID: " & rs("UserID") & "<br>" Response.Write "Name: " & rs("Name") & "<br>" Response.Write "Email: " & rs("Email") & "<hr>" rs.MoveNextLooprs.CloseSet rs = Nothingconn.CloseSet conn = Nothing%>
? Field Properties
You can also inspect field metadata:
For Each fld In rs.Fields Response.Write "Name: " & fld.Name & "<br>" Response.Write "Type: " & fld.Type & "<br>" Response.Write "Size: " & fld.DefinedSize & "<br><br>"Next
? Common ADO Field Data Types (by Type
value)
Type Value | Name | Description |
---|---|---|
3 | adInteger | Integer |
200 | adVarChar | Variable-length string |
7 | adDate | Date/time |
11 | adBoolean | Boolean |
131 | adNumeric | Numeric |
? Best Practices
Always check for
NULL
values:If Not IsNull(rs("Email")) Then Response.Write rs("Email")End If
Use
Server.HTMLEncode()
when displaying user input to avoid XSS:Response.Write Server.HTMLEncode(rs("Name"))
Let me know if you'd like help formatting field data (e.g., dates, currency) or looping through dynamic fields.