| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 711 人关注过本帖, 1 人收藏
标题:如何实现一次提交,更新多条记录?
只看楼主 加入收藏
ycdiscovery
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-9-19
收藏(1)
 问题点数:0 回复次数:1 
如何实现一次提交,更新多条记录?
现在需要录入全区所有学校的小升初考试的语文成绩,但是不能一个人一个人的录入,那样显然效率太差,现在我的想法是一页显示50个考生,每个考生占一行,每一行中包含准考证号、文本框(输入语文成绩),页面下方是提交按钮,全部录入完50个考生的语文成绩后,点击提交就录入了50个考生的语文成绩。然后转向下50个考生以继续录入。
表:student。相关字段:id(准考证号),chn1(语文成绩)。还有其他的,就不列举了。
按钮sub(value=更新),文本框chn1(录入成绩的)
以前我做的都是针对每一条记录的更新,但如何实现一次更新多条记录呢?
下面的代码执行后不能实现这个功能:
if request("sub")="更新" then
  
 do   while   not   rs.eof
     stuid=rs("id")
 
     sql1="select * from student where id="&stuid&""
     rs1.open   sql1,conn,1,3
       if not rs1.eof then  
   
        rs1("chn1")=request("chn1")
      
        rs1.update  
        end if
     rs1.close   
     rs.movenext  
 loop   
 end if
请高手看看是怎么回事,谢谢

[[it] 本帖最后由 ycdiscovery 于 2008-10-19 22:07 编辑 [/it]]
搜索更多相关主题的帖子: 记录 
2008-10-19 22:06
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
设计好每个input的name属性,然后用For Each re In Request.Form来遍历,组合出语句来。

我写的一段代码:
程序代码:
' 显示表单


    Sub ShowTestScoreEdit(TestID,ClassID)
        Dim rs,Subjects,i,c
        Set rs=Conn.Execute("SELECT * From Ns_Student Where ClassID=" & ClassID & " Order By ShowOrder Asc")
        Subjects=Split(Conn.Execute("Select Subject From Ns_Test Where TestID=" & TestID)("Subject"),"|")
        %>
        <script>
          var testid=<%=TestID%>;
          var classid=<%=ClassID%>;
        </script>
        <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#DFDFDF">
              <tr bgcolor="#CCCCCC">
                <!--<td width="50" height="30"><div align="center"><strong>编号</strong></div></td>-->
                <!--<td width="80" height="30"><div align="center"><strong>学号</strong></div></td>-->
                <td height="30"><div align="center"><strong>姓名</strong></div></td>
                <%
                For i=1 to UBound(Subjects)-1
                %>
                <td width="50" height="30"><div align="center"><strong><%=GetSubjectName(Subjects(i))%></strong></div></td>
                <%
                Next
                %>
              </tr>
        <%
        c=0
        Randomize
        While Not rs.EOF
        
            c=c+1
            %>
        
              <tr align="center" bgcolor="#F5F5F5">
                <!--<td height="25"><a href="Student_Show.asp?id=<%=rs("StudentID")%>">S<%=rs("StudentID")%></a></td>-->
                <!--<td><%=rs("RegOrder")%></td>--->
                <td><%=Encode(rs("StudentName"))%></td>
                <%
                For i=1 to UBound(Subjects)-1
                    Response.Write "<td id=""td" & c & "n" & Subjects(i) & """><input style=""width:30px;text-align:center;"" size=""3"" type=""text"" name=""Score" & rs("StudentID") & "n" & Subjects(i) & """ id=""sScore" & c & "n" & Subjects(i) & """ value=""" & GetScore(rs("StudentID"),TestID,Subjects(i)) & """ onkeypress=""jumpto(" & c & "," & Subjects(i) & ",event)"" onchange=""paint(" & c & "," & Subjects(i) & ")""/><script>setTimeout(""paint(" & c & "," & Subjects(i) & ")""," & Int(Rnd*(100)+c*(100)+2000) & ")</script></td>"
                Next
                %>
              </tr>    
    <%
            rs.MoveNext
        Wend
        %>
              
            </table>
      <%
    End Sub
    


程序代码:
'接受数据
      <%
      Dim s,t
      For Each s In Request.Form
          If (Left(s,5)="Score") Then
            t=Replace(s,"Score","")
            t=Split(t,"n") ' StudentID,SubjectID
            SaveScore ID,t(0),t(1),Request.Form(s)
            Response.Write ". "
            Response.Flush
        End If
      Next
      'Response.Write "<br />成绩录入成功!下面转向测试页面"
      'Redirect "Test_Show.asp?ID=" & ID
      Response.Write "<br />成绩录入成功!下面将对成绩进行排序<script>setTimeout(""MM_showHideLayers('Console','','show')"",300)</script>"
      Redirect "Test_Score_Sort.asp?ID=" & ID & "&ClassID=" & ClsID
      %>
2008-10-19 22:17
快速回复:如何实现一次提交,更新多条记录?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012094 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved