<!--#include file="inc/conn.asp"-->
<!--#include file="inc/md5.asp"--><%
set rs = Server.CreateObject("ADODB.recordset")For j = 3 To 10 sql="select * from cis_cardinfo where id="&j
rs.Open sql, conn,1,3For i = 5 To 74 Randomize '初始代随机数种子
num1=rnd() '产生随机数num1
num1=int(89*num1)+10          rs(i)=num1
 rs.update 
 Next 
%>
<%rs.close
set rs=nothing%>
<%Next%>这段代码是要在数据库里插入7条记录,可是执行结果直插入了1条,请问怎样修改?

解决方案 »

  1.   

    插入记录当用SQL INSERT
    更新当用SQL UPDATE此例中加 rs.moveNext 在循环里试试
    附:randomize放在循环外
      

  2.   

    <%
    set rs = Server.CreateObject("ADODB.recordset")sql="select * from cis_cardinfo where id=4"
    rs.Open sql, conn,1,3For j = 3 To 10 For i = 5 To 74 Randomize '初始代随机数种子
    num1=rnd() '产生随机数num1
    num1=int(89*num1)+10          rs(i)=num1
     rs.update 
     Next 
    %><%Next
    rs.movenext %>
    <%rs.close
    set rs=nothing%>我还成这样还是只输出了一条记录
      

  3.   

    这样再试试(你确定存在这样的7行数据?程序写死了不好吧,推荐用rs.eof加计数器实现限次)
    set rs = Server.CreateObject("ADODB.recordset")
    sql="select * from cis_cardinfo where id=4"
    rs.Open sql, conn,1,3
    Randomize
    For j = 3 To 10
    For i = 5 To 74   
    num1=rnd()
    num1=int(89*num1)+10
    rs(i)=num1
    Next
    rs.update
    rs.movenext
    Next 
    rs.close 
    set rs=nothing
      

  4.   

    ???你的SQL里是这么写的啊,当然只有一行啦,除非id不唯一
      

  5.   

    <% 
    set   rs   =   Server.CreateObject("ADODB.recordset") For   j   =   3   To   10   sql="select   *   from   cis_cardinfo   where   id="&j 
    rs.Open   sql,   conn,1,3 
    For   i   =   5   To   74   Randomize   '初始代随机数种子 
    num1=rnd()   '产生随机数num1  /////////你这儿num1得到的不是1就是0
    num1=int(89*rnd())+10        ///改成直接计算。                    rs(i)=num1 
      rs.update   
      Next   
    %> 
    <%rs.close 
    set   rs=nothing%> 
    <%Next%>