高手请进,这段asp代码某些地方我看不懂

来源:百度知道 编辑:UC知道 时间:2024/09/12 22:30:47
请问高手这段asp代码中的<% For I=1 To rs.Fields.Count-1 %>是什么意思?
第二个问题就是rs.fields.count是什么意思?
然后就是rs.fields.count-1有是什么意思?
第四个问题就是if i=3 then这个i=3是什么东西?请解释一下?
第五个问题就是rs(I)具体是指哪个字段?

Do While Not rs.Eof
%>
<TR ALIGN=CENTER>
<% For I=1 To rs.Fields.Count-1 %>
<% If I=3 Then %>
<TD WIDTH="59%" BGCOLOR=#FFFF99><% = rs(I).Value %></TD>
<% Else %>
<TD WIDTH="11%" BGCOLOR=#FFFF99><% = rs(I).Value %></TD>
<% End If%>
<% Next %>
<TD WIDTH="8%" BGCOLOR=#FFFF99>
<A HREF=modi_hardware_step3.asp?ID=<% =rs(0).Value %>&hardware_name=<% =hardware_name %>>修改</A>
</TD>
<%
rs.MoveNext
Loop
cn.Close
Set cmd=Nothing
Set cn=Nothing

从字面上看
请问高手这段asp代码中的<% For I=1 To rs.Fields.Count-1 %>是什么意思?
从1循环到rs中字段的总数-1
第二个问题就是rs.fields.count是什么意思?
rs.fields.count是指字段的总数
然后就是rs.fields.count-1有是什么意思?
-1可能是记数上的不同,rs(i)从0开始的,所以要总数-1
第四个问题就是if i=3 then这个i=3是什么东西?请解释一下?
I就是For I=1循环里的I
第五个问题就是rs(I)具体是指哪个字段?
rs(I)要看你的表了,从第一个到n-1个遍历过来的

没有仔细看代码,大致应该如此吧

For I=1 To rs.Fields.Count-1
关键问题就在这句,你如果明白了 rs.Fields.Count是什么意思,其它问题也就应该不存在了。

rs.Fields.Count就是计算你一个表里面的字段数量,比如一个表TABLE1,里面有4个字段,分别是ID,NAME,AGE,SEX,那么如果你用:
SELECT * FROM TABLE1
取得该表的结果集,rs.Fields.Count就等于4,这说明你现在取出来TABLE1表中的4个字段,这时请注意,如果要表示ID字段应该用rs(0),NAME字段RS(1),字段的排号是从0计算起的。

如果你的SQL语句是:
SELECT ID,NAME FROM TABLE1
那么你取出来的rs.Fields.Count就等于2,因为你SQL语句中只要求显示了两个字段。

你所给出的这段程序,其实很简单,就是在取当前表中每个字段中的内容,只不过没有用传统的rs("字段名")来表示,而是换成了字段的编号。

rs(I)到底是那个字段,就要看I的数值是多少,这段程序上面已经有FOR来定义一个循环,将I按照1的增量增加到rs.Fields.Count-1的数字。

如果还不明白,我可以教