首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

用in如何不能批量更新了呢

2012-03-05 
用in怎么不能批量更新了呢?divalign center inputtype checkbox name UserID value %rsT

用in怎么不能批量更新了呢?
<div   align= "center ">
                        <input   type= "checkbox "   name= "UserID "   value= " <%=rsT( "UserID ")%> "   />
                    </div>

这里可以复选,相关代码如下:
        If   InStr(UserID,   ", ")> 0   Then
                sql   =   "select   *   from   Fee   where   UserID   in   ( "&UserID& ")   order   by   FeeID   desc "
        Else
                sql   =   "select   *   from   Fee   where   UserID   = "&UserID& "   order   by   FeeID   desc "
        End   If
        Set   rs   =   Server.CreateObject( "Adodb.Recordset ")
        rs.Open   sql,   cn,   1,   3
        If   rs.EOF   And   rs.bof   Then
                Response.Write( "该会员不存在 ")
                Exit   Sub
        Else
                Do   While   Not   rs.EOF
                        tmpUserID   =   rs( "UserID ")
                        Set   tmpRs   =   cn.Execute( "select   top   1   *   from   Fee   Where   UserID   = "&tmpUserID& "   order   by   FeeID   desc ")
                        tmpBalance   =   tmpRs( "Balance ")
                        rs.addnew
                        rs( "UserID ")   =   tmpUserID
                        rs( "FeeActionID ")   =   tmpFeeActionID
                        rs( "Amount ")   =   tmpBalance
                        rs( "Balance ")   =   0
                        rs( "PostUser ")   =   ManageUser
                        rs.update
                        rs.movenext
                Loop
        End   If
        rs.Close
        Set   rs   =   Nothing

我看动易也是这样写的,怎么他的可以,我的不可以呢?执行了以后,总是执行第一条语句,后面的没反应


[解决办法]
我意思是rs.addnew去掉,保留rs.update
rs.addnew是新增一条记录,


你上面的操作等于把UserID复制一份。
UserID如果是唯一的,如果是主键,肯定不行。

[解决办法]
If InStr(UserID, ", ")> 0 Then
sql = "select * from Fee where UserID in ( "&UserID& ") order by FeeID desc "
'这里有错误吧
select * from Fee where UserID in ( "1 ", "2 ") order by FeeID desc
request=( "userid ")值是 "1,2 "所以只能一条记录
用spilt解决

Else
sql = "select * from Fee where UserID = "&UserID& " order by FeeID desc "
End If

热点排行