问题标签 [output-parameter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
13616 浏览

vba - 在 Access 中使用 SQL Server 存储过程的输出参数

在从 Access 2013 VBA 执行过程后,我试图从 SQL Server 2008 中的存储过程获取输出变量(新的标识列)。我并不完全了解所有 adodb 的东西,而且我已经尝试了不同文章中的许多东西,但无济于事。这就是我现在的位置......

存储过程:

从我得到的表格中:

至此,代码可以正常工作,生成新记录等。当我从 SQL Server 运行存储过程时,它会返回正确的标识列号,但我尝试了多种方法来引用 VBA 中的输出并且总是会出现加上一个空值。我如何在此处正确引用它?

0 投票
1 回答
4138 浏览

c# - 输出 SqlParameter 错误:Size 属性的大小无效为 0

我知道还有一些关于此错误的其他线程/问题,但如果可能的话,我想获得更多的见解。我们已经看到对于具有整数类型输出参数的特定代码段间歇性地发生此错误。

这就是我们定义参数的方式:

您会注意到没有指定大小,也没有指定 DBType。似乎错误并不总是发生,但有时会抛出:

在 System.Data.SqlClient.SqlCommand.SetUpRPCParameters(_SqlRPC rpc, Int32 startCount, Boolean inSchema, SqlParameterCollection 参数) 处的 System.Data.SqlClient.SqlParameter.Validate(Int32 index, Boolean isCommandProc) Size 属性的大小无效。

我假设我需要添加 DBType 和 Size 设置,但可能是这种情况发生的根本原因是什么,并且仅在某些情况下发生?

注意,SQL中的参数定义为:

0 投票
1 回答
540 浏览

c# - 如何在 C# 中定义和检索 UDT(object) 的 Oracle 输出参数表

我试图弄清楚如何定义和检索 Oracle OUTPUT 参数,该参数是 C# 中的 UDT(object) 表。

具体来说,我使用的是 C#、.NET 4.0 和 Oracle.ManagedDataAccess

我似乎找不到针对这个特定问题的正确示例 - 尽管我找到了各种类似的建议和解决方案,其中返回类型是简单的 OracleDBType 而不是 UDT 对象表。

假设以下示例:

根据一些示例,我认为 OacleDbType.Object 可能有用,但它似乎不是我正在使用的 Oracle.ManagedDataAccess 的一部分。

有人可以帮助我了解我将如何做吗?

1 - 正确定义输出参数(例如 new OracleParameter("p_values", OracleDbType.?,...)

2 - 访问/处理输出参数的UDT返回表

非常感谢您的帮助!

0 投票
2 回答
3198 浏览

sql - Mapping Output Parameters in SSIS OLE DB Source Editor

How can i map output parameter in OLEDB Soruce SSIS(BIDS 2008).In (BIDS 2012) we can specify the query parameter as input and output.

Please see below two picutres.

SSIS Package In BIDS 2008

SSIS Package in BIDS 2012

0 投票
5 回答
1280 浏览

sql-server - T-SQL 存储过程 - 检测参数是否作为 OUTPUT 提供

考虑以下 T-SQL 代码片段:

结果集是:

可以看出,@b不是平方,b/c 它没有作为输出参数传入(OUTPUT传入参数时没有限定符)。

我想知道是否有一种方法可以检查存储过程主体(在本例中为 dbo.SquareNum 主体)以查看参数是否确实作为OUTPUT参数传入?

0 投票
2 回答
1413 浏览

c# - SQL Server 输出参数在 EF C# 中显示空值

我有一个带有输出参数的以下存储过程。

在 SQL Server 上工作非常完美,请参见下面的输出:

stored procedure通过以下方式调用Entity Framework

它在输出参数中给出null值。

请帮忙。

0 投票
1 回答
55 浏览

sql-server - 使用 PIVOT 命令创建具有动态列的表

我有以下 TSQL,我一直在尝试做两件事,但没有运气:

  1. 将 Null 转换为 0
  2. 输出到我可以用于其他操作的临时表。

部分结果在附件中捕获:在此处输入图像描述

我需要进行哪些更改才能将结果捕获到具有动态列的临时表中并消除空值?谢谢。

0 投票
1 回答
1040 浏览

c# - C# ODB.NET Out 参数始终为 DBNull

我在 Oracle SQL Server 的包中有一个存储过程。这个过程有输入和输出参数。该过程本身有效,当在 Oracle SQL Developer 中执行时,输出参数读取预期的输出(最后一行的列值)。此过程必须由 Web API 通过 ODP.NET(Oracle 托管数据访问)调用。

问题:永远不会返回输出参数(ODP 中的 Long 类型和 db 中的 NUMBER(12,0) 类型)。执行命令后输出参数始终为 DBNull。

以下是我的代码的相关部分(其他参数省略): 打包过程:

使用的参数:

C#中的调用代码:

如您所见,我知道如何检查 DBNull 值,但这不是问题。它不应该获得 DBNull 值。

到目前为止我尝试过的一些事情:

  • 将 Parameter DBType 更改为 Int64 和其他(与其他人一起,我正确地得到了关于参数类型的错误)
  • 将 event_id 硬编码为一个值 (event_id := 1234567;)
  • 在数据库中直接在过程之外执行 SELECT MAX(... 查询。

尽管 SQL Developer 可以按预期工作,但我尝试的一切。将输出参数传输到调用 C# API 是有问题的。我用谷歌搜索了很多,也搜索了 Stackoverflow,所以我希望有人能帮助我找到一个可行的答案。

0 投票
1 回答
677 浏览

sql-server - ADODB 是否在具有可选输入参数的输出参数上失败?

我在 SQL Server 2008 R2 数据库中有一个存储过程,带有一个可选的输入参数和一个输出参数,如下所示:

当我在 SSMS 中调用没有可选参数的存储过程时,它可以正常工作:

但是当我在 ASP 经典中通过 ADODB 尝试同样的事情时,如下所示:

它什么都不做,@TicketID是 left Empty,并且 ADODB.Connection 包含这个 NativeError 8162:

“形式参数 \"@UserID\" 未声明为 OUTPUT 参数,而是在请求的输出中传递的实际参数。”

我一直使用 ADODB 来调用没有可选参数的存储过程。这是 ADODB 中的一个已知缺陷,还是在有输出参数时我需要做一些特别的事情才能让它工作?

0 投票
1 回答
109 浏览

php - 使用 sqlsrv (PHP) 处理 SP 中的 OUTPUT 参数时遇到问题

对不起我糟糕的英语。这是问题所在:我正在尝试通过 sqlsrv 驱动程序、SP 和输出参数从 sql server express 2014 中的表中接收 PHP 中的 ID。

当我执行 de SP 并通过 SSMS 打印输出参数时,一切正常。但是,当我从 PHP 调用 SP 时,会执行 SP,但输出参数不会改变。

这是SP:

这是 PHP,假设$conexion有效:

最后,echo $idExamen打印0


编辑:找到了另一种方法来做我想做的事,在 SP 中使用 SELECT。然后我只是在 PHP 中获取结果