当前位置: 首页 > 面试题库 >

在VBScript中使用输出参数调用SQL存储过程

吕钧
2023-03-14
问题内容

我已经编写了一个VBScript函数来调用存储过程。过去,我编写了许多函数,这些函数使用输入参数调用存储过程,但是在这种情况下,我需要使用Output参数。

在另一个应用程序中,我使用实体框架调用完全相同的存储过程,因此该存储过程很好。

这是我的代码:

Function checkAccess(userid,link)
    isAllowed = false

    set cmd = Server.CreateObject("ADODB.Command")
    cmd.CommandText = "Check_Permission"
    cmd.ActiveConnection = Conn
    cmd.NamedParameters = true
    cmd.CommandType = adCmdStoredProc
    cmd.Parameters.Append(cmd.CreateParameter("@Login", adVarChar,

adParamInput, 50, userId))
cmd.Parameters.Append(cmd.CreateParameter(“@LinkId”, adInteger,
adParamInput, 50, link))
cmd.Parameters.Append(cmd.CreateParameter(“@IsAllowed”, adBoolean,
adParamOutput, 10, isAllowed))

    checkAccess = isAllowed
End Function

此函数始终返回false。我该如何运作?


问题答案:

您应该返回输出参数的值:

checkAccess = cmd.Parameters("@IsAllowed").Value

另外,ADO中的输出参数不需要初始值,而adBoolean参数不需要大小,因此您可以将最后一个参数更改为:

cmd.Parameters.Append(cmd.CreateParameter("@IsAllowed", adBoolean, adParamOutput))

您也可以摆脱isAllowed变量,因为它不再需要。



 类似资料:
  • 问题内容: 我在SQL Server 2008 R2中有一个Oracle链接服务器。我需要执行Oracle存储过程(在第一个过程中使用输出参数,在第二个过程中使用输入参数): 我没有找到有关此问题的完整文档,只有带有无参数选择/非选择过程的简单示例,并且想知道如何调用这些过程,具有内部select的过程以及具有基本参数类型的多参数过程。 问题答案: 它应该像这样工作: 如果您有几个参数,则可能如下

  • 本文向大家介绍Sql Server 存储过程调用存储过程接收输出参数返回值,包括了Sql Server 存储过程调用存储过程接收输出参数返回值的使用技巧和注意事项,需要的朋友参考一下 创建存储过程: 接收输出参数: 2,带返回值 创建存储过程: 接收返回值: 以上所述是小编给大家介绍的Sql Server 存储过程调用存储过程接收输出参数返回值,希望对大家有所帮助,如果大家有任何疑问请给我留言,小

  • 我想从Java代码调用SQL服务器2008中的一个存储过程。存储过程以用户定义的表类型为参数(基本上是数组)。请给我Java语法来调用存储过程并将数组作为输入参数传递

  • 问题内容: 我希望能够在PetaPoco中使用命名参数调用存储的proc。 为了调用执行搜索/获取的存储过程: 我可以做这样的事情: 另外,如何调用执行插入操作的存储过程? 谢谢,Nac 问题答案: 更新: 我尝试了以下操作来进行获取和插入,并且效果很好: 可以进一步改进以传递SQL参数。

  • 同事们,您能帮我用Hibernate4调用MSSQL2008存储过程,其中包含两个输入和两个输出参数吗?存储过程如下所示: 我正在尝试使用Session.CreateSQLQuery方法调用过程: 但也有一些不明朗的时刻: 如何注册多个输出参数? Session.CreateSQLQuery方法是否适合调用具有多个输出参数的存储过程? 更新 我有一个MS SQL过程 并具有映射文件: 运行应用程序

  • 输入/输出示例: infoData序列化输入:总长度5191 当,NVARCHAR(1000),infoData值:总长度-1003 帮助我获得完整的info_Data原样,没有任何丢失或截断。 提前道谢。