gpt4 book ai didi

sql-server - 使用 Access VBA 从 SQL Server 存储过程获取 varchar OUTPUT 参数

转载 作者:行者123 更新时间:2023-12-03 02:40:51 25 4
gpt4 key购买 nike

我在 SQL Server 中有以下存储过程,并且可以从 SQL Server 中很好地调用它:

CREATE PROCEDURE uspRecipeNote
@IngString varchar(255) OUTPUT,
@MixID int = NULL
AS
SET NOCOUNT ON;
SET @IngString = dbo.ufnRecipeNote(@MixID);

我几个月来一直在 Access 中使用 VBA 调用存储过程,从未遇到过问题,但尝试了几种可能性,但很困惑,根据我的尝试,出现以下错误之一:

“参数对象定义不正确。提供的信息不一致或不完整。”“过程或函数 uspRecipeNote 指定了太多参数。”

这是我目前在 VBA 中所拥有的内容:

Set cmd.ActiveConnection = cn
cmd.CommandTimeout = 0
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "uspRecipeNote"

'add parameters
cmd.Parameters.Append cmd.CreateParameter("@IngString", adVarChar, adParamOutput)
cmd.Parameters.Append cmd.CreateParameter("@MixID", adInteger, adParamInput, , intMixID)

cmd.Execute

无论我尝试什么,我都会在第一个参数上遇到错误。我怀疑这很简单。预先感谢您的帮助!

最佳答案

字符串参数需要定义一个(最大)长度,例如,

cmd.Parameters.Append cmd.CreateParameter("@IngString", adVarChar, adParamOutput, 255)

关于sql-server - 使用 Access VBA 从 SQL Server 存储过程获取 varchar OUTPUT 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36361593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com