日期:2014-05-16  浏览次数:20973 次

ASP调用存储过程的问题。菜鸟求助!
各位大侠,我是个存储过程初学者,看了网上一些资料,有点糊涂,随便写了个,不知道还缺少什么没写啊,求指正!!!

p.s.
我用的SQL Server 2008 ,数据库中有一张dwInfo表(单位信息),有单位账号dwzhanghao,账户余额zhyue等字段,现在我想根据web页面传递的单位账号值来显示其账号余额,存储过程如下:

CREATE PROCEDURE my_test
@dwzhanghao varchar(18),@zhyue numeric(18,2) OUTPUT   
AS 
set nocount on
begin
select  * 
from dwInfo
where dwInfo.dwzhanghao=@dwzhanghao 
end
go 


ASP调用存储过程代码如下:

<html>
<head></head>
<body>

<%
Set conn = Server.CreateObject("ADODB.Connection") "
MyConStr="此处为数据库连接字符串"
conn.Open MyConStr

'从数据库一张表中取单位账号
set rs=server.createobject("adodb.recordset")
rs.open 查询字符串,conn,1,1   

'另一张表中也有dwzhanghao字段,是对应的。根据单位账号,以此显示各单位的余额
Set dwzhye = Server.CreateObject("ADODB.Recordset")
dwzhye.open "Exec my_test rs("dwzhanghao")",conn 
%>

<div>
账号为<%=rs(dwzhangh)%>的单位账号余额为:<%=dwzhye("zhye")%>
<div>

</html>
</body>
ASP 数据库 存储过程

------解决方案--------------------
dwzhye.open "Exec my_test '"&rs("dwzhanghao")&"'",conn 
------解决方案--------------------
应该用Command对象去调用存储过程取值
Set rs = oCommand.execute()