大家好,帮小弟解决一下,这个问题,先谢谢了。 我建了一个存储过程test CREATE PROCEDURE test @I_name nvarchar(50) AS select * from Ill_B where I_name =@I_name GO 下面在asp中调用它,我采用了两种方法,其中一种可以执行,另一种一直出错,不知道怎么改,特请大家帮忙。 第一种方法 I_name=request.Form("Ill_name") set rs=server.createobject("adodb.recordset") sql="exec test '"&I_name&" ' " rs.open sql,conn,1,1 第一种方法有它不足之处就是不支持分页的一些属性如:pagesize,pagecount等。因此我要采用第二种方法。 第二种方法:I_name=request.Form("Ill_name") 'set comm=server.createobject("adodb.command") 'comm.commandtype=4 'comm.Parameters.append comm.CreateParameter("@I_name",adVarChar,adParamInput,50,I_name) 'set comm.activeconnection=conn 'comm.commandtext="dbo.test" 'set rs=server.createobject("adodb.recordset") 'rs.CursorType=3 'rs.open comm,1,1
出现的错误:参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。 而用这种方法就行,不知道为什么?