标题:[再问]asp调用存储过程的问题
只看楼主
chaojimali
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2006-4-25
 问题点数:0 回复次数:3 
[再问]asp调用存储过程的问题

我写了一段存储过程
CREATE PROCEDURE [dbo].[sq_sss]
@sum_value int output
AS
select @sum_value= sum(xxx) from table
return
GO

在ASP中调用的时候conn.execute "exec sq_sss"
总是提示:过程 'sq_sss' 需要参数 '@sum_value',但未提供该参数。
@sum_value都定义为output 还需要传递给他一个参数吗
大家帮忙解决一下吧

[此贴子已经被作者于2006-8-11 9:57:45编辑过]

搜索更多相关主题的帖子: asp 
2006-08-09 10:41
渚薰
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:1132
专家分:0
注 册:2006-8-6
得分:0 
需要声明输出参数
SET parameter=command.CreateParameter(Name,Type,adParamReturnValue)

个人ajax技术专题站: " target="_blank">http://www. 我不会闲你烦,只会闲你不够烦!
2006-08-09 13:26
ming206
Rank: 2
来 自:重庆
等 级:等待验证会员
威 望:3
帖 子:545
专家分:7
注 册:2005-8-2
得分:0 
例如一个存储过程名:Proc_AdminLists (具体字段就没必要说了)
'这里先连接数据库,然后在引用方法
call  pro_linksql("Proc_AdminLists")

'以下为pro_linksql的具体方法
'**通过Command对象调用存储过程**
'pro_name为存储过程名
private function pro_linksql(pro_name)
    response.Write("调用存储过程结果:<br>")
    DIM MyComm,MyRst
    Set MyComm = Server.CreateObject(")
    MyComm.ActiveConnection = conn_counter                'MyConStr是数据库连接字串
          = pro_name                    '指定存储过程名
          = 4                           '表明这是一个存储过程
    MyComm.Prepared         = true                        '要求将SQL命令先行编译
    Set MyRst = MyComm.Execute
        If Not MyRst.Eof then
            While  not MyRst.Eof
                 response.Write "名字:"&MyRst.fields(1)&"<br>"  
                 MyRst.Movenext
            Wend
        End If   
    Set MyComm = Nothing
end function   

外贸综合平台:E贸通
2006-08-09 13:42
chaojimali
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2006-4-25
得分:0 
以下是引用ming206在2006-8-9 13:42:17的发言:
例如一个存储过程名:Proc_AdminLists (具体字段就没必要说了)
'这里先连接数据库,然后在引用方法
call pro_linksql("Proc_AdminLists")

'以下为pro_linksql的具体方法
'**通过Command对象调用存储过程**
'pro_name为存储过程名
private function pro_linksql(pro_name)
response.Write("调用存储过程结果:<br>")
DIM MyComm,MyRst
Set MyComm = Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection = conn_counter 'MyConStr是数据库连接字串
MyComm.CommandText = pro_name '指定存储过程名
MyComm.CommandType = 4 '表明这是一个存储过程
MyComm.Prepared = true '要求将SQL命令先行编译
Set MyRst = MyComm.Execute 为什么一直提示这一句语法错误或违反访问规则
If Not MyRst.Eof then
While not MyRst.Eof
response.Write "名字:"&MyRst.fields(1)&"<br>" '这个是什么意思?
MyRst.Movenext
Wend
End If
Set MyComm = Nothing
end function


2006-08-11 09:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-82948-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.240233 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved