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

带一个输入参数与两个输出参数的存储过程,循环显示时提示对象关闭时,不允许操作异常

2012-02-08 
带一个输入参数与两个输出参数的存储过程,循环显示时提示对象关闭时,不允许操作错误SQL的存储过程代码:CRE

带一个输入参数与两个输出参数的存储过程,循环显示时提示对象关闭时,不允许操作错误
SQL的存储过程代码:
  CREATE   PROCEDURE   dbo.ShopUnionShopClass
              @BigClass   int,
              @id   int   output,
              @e_name   varchar(50)   output
        as
        set   nocount   on
        begin
              if   @BigClass   is   null   return
              select   top   10   @id=id,@e_name=e_name  
                      from   dbo.[euser]  
    where   BigClass=@BigClass
              return
        end
GO
----------------------------------------
ASP调用代码:
                        <% 'ListShop(52)
DIM   MyComm,UserID,UserName
        BigClass   =   52
        Set   MyComm   =   Server.CreateObject( "ADODB.Command ")
        With   MyComm
.ActiveConnection   =   conn                     'MyConStr是数据库连接字串
.CommandText             =   "ShopUnionShopClass "           '指定存储过程名
.CommandType             =   4                                   '表明这是一个存储过程
.Prepared                   =   true                             '要求将SQL命令先行编译
'声明参数
.Parameters.append   .CreateParameter( "@BigClass ",3,1,4,BigClass)
.Parameters.append   .CreateParameter( "@id ",3,2,4)
.Parameters.append   .CreateParameter( "@e_name ",200,2,50)
Set   ShopClassRs   =   .Execute
        End   With
If   Not(ShopClassRs.Eof   And   ShopClassRs.Bof)   Then '-----这行出错
%>
                          <table   width= "100% "   border= "0 "   cellspacing= "0 "   cellpadding= "0 ">
                              <%
While   Not   ShopClassRs.Eof
%>
                              <tr>
                                  <td   height= "20 "> · <a   href= "Shop-view.asp?ID= <%=ShopClassRs( "ID ").Value%> "   title= " <%=Rs( "e_name ").Value%> "   target= "_blank "> <%=gotTopic(ShopClassRs( "e_name ").Value,12)%> </a> </td>
                              </tr>


                              <%
ShopClassRs.MoveNext
Wend

%>
                              <tr>
                                  <td   height= "15 "   align= "right "> <a   href= "Shop-Type.asp?BigClass= <%=lieuType%> "   class= "BgRed12Link "> 更多... </a> </td>
                              </tr>
                          </table>
<%End   If%>
-----------------
提示对象关闭时,不允许操作。是在If   Not(ShopClassRs.Eof   And   ShopClassRs.Bof)   Then这行。。


[解决办法]
conn.open了吗?
[解决办法]
存储过程返回的不是记录集

CREATE PROCEDURE dbo.ShopUnionShopClass
@BigClass int,
as
begin
if @BigClass is null
select top 0 id,e_name from dbo.[euser] where BigClass=@BigClass
else
select top 10 id,e_name from dbo.[euser] where BigClass=@BigClass
end
GO

热点排行