Sql ASP文件中的EOF两次不工作

Sql ASP文件中的EOF两次不工作,sql,asp-classic,Sql,Asp Classic,当我只使用下面的一段代码时,我的代码运行良好,但当我添加另一段代码时,结果没有显示出来。当EOF在同一页上运行两次时,它似乎无法工作。如果有人能帮忙,我们将不胜感激 <% while (NOT con.EOF) %> CODE HERE <%con.MoveNext() Wend %> 代码在这里 代码: <% if not con.BOF then %> <div style="margin-top:1em"> <form

当我只使用下面的一段代码时,我的代码运行良好,但当我添加另一段代码时,结果没有显示出来。当EOF在同一页上运行两次时,它似乎无法工作。如果有人能帮忙,我们将不胜感激

<% while (NOT con.EOF) %>
    CODE HERE
<%con.MoveNext()
 Wend %>

代码在这里
代码:

<% if not con.BOF then %>
<div style="margin-top:1em">

<form action="dbresults.htm" method="get">

      <p>Company name:<br/>
      <select name="abn">
        <option label="All companies" value="all"></option>
        <% while (NOT con.EOF) %>
       <option label="<%=con("legal")%>" value="<%=con("abn")%>"></option>
    <%con.MoveNext()
                      Wend %>
  </select>
  </p>
 <p>Categories for Creative Design:<br/>
  <select name="cat">
    <option label="All categories" value="all"></option>
    <option label="Strategic brand, marketing and communications advice" value="a"></option>
    <option label="Graphic design and layout" value="b"></option>
    <option label="Forms design" value="c"></option>
    <option label="Web design and development" value="d"></option>
    <option label="Authoring services" value="e"></option>
    <option label="Editorial services" value="f"></option>
    <option label="Translation services" value="g"></option>
    <option label="Photography and film services" value="h"></option>
    <option label="Scanning and digitisation services" value="i"></option>
    <option label="Multimedia editing services" value="j"></option>
  </select>
</p>
<input type="submit" value="Search" />
</form>
<br /><hr />

<table style="font-size:.9em;" class="contentTable">
      <tr>
            <th>ABN:</th>
            <th>Company Name:</td>
      </tr>
  <% while (NOT con.EOF) %>
      <tr>
            <td><%=con("abn")%></th>
            <td><a href="dbcomp.htm?abn=<%=con("abn")%>&cat=all">         
 <%=con("legal")%></a></td>
      </tr>
 <%
   con.MoveNext()
Wend
  %>
 </table>
</div>
 <% else %>
 <p>No records match your query.</p>
  <p><a href="dbtest.htm">Return to search page</a></p>
 <%
 end if
 con.close
 %>

公司名称:

创意设计类别:



荷兰银行: 公司名称: 没有与您的查询匹配的记录


如果要在同一记录集上迭代,则在完成第一个循环后需要一个
con.MoveFirst()

如果要在同一记录集上迭代,则在完成第一个循环后需要一个
con.MoveFirst()

在第一个WHILE循环(
WHILE(非con.EOF)
之后您的记录集保留在EOF,因此第二个循环不会执行任何操作。在第二次循环之前,需要在记录集中重新定位光标。使用
con.MoveFirst()
con.MovePrevious()
等来重新定位。

在第一个WHILE循环(
WHILE(非con.EOF)
)之后,您的记录集保留在EOF,因此第二个循环不会执行任何操作。在第二次循环之前,需要在记录集中重新定位光标。使用
con.MoveFirst()
con.MovePrevious()
等来重新定位。

在第一个
循环后,是否将
con
对象倒带?如果你没有,它仍然在文件的末尾;您尚未指定
con
对象的类型。:)您是否在第一次
while
循环之后倒带
con
对象?如果你没有,它仍然在文件的末尾;您尚未指定
con
对象的类型。:)啊,谢谢。这会导致一些额外的错误,我如何向“set con=connect.execute(conDB)”添加另一个变量,比如set con=connect.execute(conDB+anotherVariable)?我不太清楚你在问什么。如果这是一个单独的问题,你的光标问题是解决,那么你应该把它作为一个单独的问题发布,包括你用来进行查询的代码。啊,谢谢。这会导致一些额外的错误,我如何向“set con=connect.execute(conDB)”添加另一个变量,比如set con=connect.execute(conDB+anotherVariable)?我不太清楚你在问什么。如果这是一个单独的问题,并且您的游标问题是solve,那么您应该将其作为一个单独的问题发布,包括您用于执行查询的代码。