注册 登录
编程论坛 ASP技术论坛

在ASP中调用该存储过程出错了,提示无效的或无资格的引用,问题出在哪里?

kira007 发布于 2008-11-17 10:27, 773 次点击
***************调用方式***********************************
Function DocumentSetting(stren,strcn,content,contentcn,flag)
'参数说明  =========================
'str=字段
'strcn=中文字段
'content=值
'contentcn=中文值
'flag 0 为查询,1 更新
'===================================
Set MyComm = Server.CreateObject(")

MyComm.ActiveConnection = conn
= "DocumentationSetting"
= 4
MyComm.Prepared = true
MyComm.Parameters.Append .CreateParameter("@operation",3,1,4,flag) '调用过程,执行到这里报错!
MyComm.Parameters.Append .CreateParameter("@stren",200,1,50,stren)
MyComm.Parameters.Append .CreateParameter("@strcn",200,1,50,strcn)

if flag=1 then'执行更新
MyComm.Parameters.Append .CreateParameter("@contentEN",201,1,10000000,content)
MyComm.Parameters.Append .CreateParameter("@contentCN",201,1,10000000,contentcn)
end if

if flag=0 then
set ProRS=MyComm.execute
DocumentSetting=ProRS'返回一个数据集
else
MyComm.execute
end if

set MyComm=nothing
end function

********** 存储过程 ******************
CREATE PROCEDURE DocumentationSetting
@operation int,
@stren varchar(50),--英文字段
@strcn varchar(50),--中文字段

@contentEN ntext,--英文字段值
@contentCN ntext --中文字段值

AS
set nocount on

if @operation=0 --0执行查询操作!

begin
      DECLARE  @Sql  NVARCHAR(1000)--定义动态 查询SQL
      SET @Sql='select  '+@stren+' , '+@strcn+' from  Profile_INFO'
      exec(@sql)
end

else
--==================================================================================================================================================================
--否则执行更新操作!
begin
        DECLARE  @SqlStr  NVARCHAR(1000)--定义动态 更新 SQL
        SET @SqlStr=' update  Profile_INFO set  '+@stren+'='+cast(@contentEN as varchar(8000))  +' , '+@strcn+'='+cast(@contentCN as varchar(8000))
        exec(@SqlStr)
end
GO
1 回复
#2
kira0072008-11-17 17:16
问题终于解决了
1