7.3.4 Field对象和Fields集合的应用
Fields对象又称字段对象,是Recordset的子对象。在一个记录集中,第一个字段就是一个Field对象,而所有的Field对象组合起来就是Fields集合。
在前面7-2.asp中,使用过rs("name")来取得当前记录的name字段的值,其实就是使用Fields集合和Field对象。要输出name字段当前记录的值,可使用以下几种方法:
(1)rs("name")
(2)rs.Fields("name")
(3)rs.Fields("name").Value
(4)rs.Fields.Item("name").Value
(5)rs (2)
(6)rs.Fields(2)
(7)rs.Fields(2).Value
(8)rs.Fields.Item(3).Value
说明:这里的2是name字段在记录集rs中的索引值,可以通过Select语句来改变此索引值。例如,把7-2.asp中的rs.Open "Select ∗ from Users",conn语句改写成rs.Open "Select Email,Id,Name,Power from Users",conn,此时name字段在rs记录集中的索引值就变成了0。
1.Fields集合的属性Count
Fields集合的属性只有一个,就是Count属性。该属性返回记录集中字段(Field对象)的个数,语法格式如下:
Recordset对象.Fields.Count
2.Fields集合的方法与应用
Fields集合的方法也只有一个,就是Item方法。该方法用于建立某一个Field对象。语法格式如下:
Set Field对象=Recordset对象.Fields.Item(字段名或字段索引值)
其中,字段索引值是根据记录集中的先后顺序从0起到Fields.Count−1。
下面几条语句都是创建name字段的Field对象。
--------------------------清单7-11 7-11.asp-------------------------
<!--#include file="conn.asp" -->
<%
Dim rs
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open "Select ∗ from Users",conn
Dim fld
'使用字段名或索引值作为参数建立Field对象
set Fld=rs.Fields.Item("name")
set Fld= rs.Fields.Item(2)
'------------Item可以省略----------------
set Fld=rs.Fields("name")
set Fld= rs.Fields(2)
'------------Fields也可以省略------------
set Fld=rs("name")
set Fld= rs(2)
%>
--------------------------------------------------------------------
由于没有显示语句,所以在调试时不会显示内容。
3.Field对象的属性与应用
Field对象的常用属性如表7-6所示。
表7-6 Field对象的常用属性
表中所列出的属性基本上是用来返回字段(Field对象)的各种性质,如字段类型、长度等,这些属性在Access表设计视图中可以看到。Value是比较常用的属性,其他属性用得较少,请看下面的例子。
--------------------------清单7-12 7-12.asp-------------------------
<!--#include file="conn.asp" -->
<%
Dim rs
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open "Select ∗ from Users",conn
Dim i,fld
'表格的第一行
response.write "<table border=1><tr><td>字段名称</td><td>字段类型
</td><td>字段大小</td><td>字段最大位数</td></tr>"
'表格的第二行作为循环体,取得所有字段名等属性的值
For i=0 to rs.Fields.Count-1
set fld=rs.Fields.item(i)
response.write
"<tr><td>"&fld.Name&"</td><td>"&fld.Type&"</td><td>"&fld.Defineds
ize&"</td><td>"&fld.Precision&"</td></tr>"
Next
'表格结束
Response.write"</table>"
%>
--------------------------------------------------------------------
调试结果如图7-22所示。
图7-22 程序7-12.asp的运行结果
可以用Field对象的属性来获得表结构:每一次循环就建立一个Field对象Fld,每一个Fld对象依次是属于每一个字段,在循环中输出此对象的名称、类型、大小和最大位数属性,循环结束后输出整个表的所有字段的结构,即表结构。通常都用这种方式获取表的结构。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。