在 PROC 中将表参数定义为 OUTPUT [重复]

Posted

技术标签:

【中文标题】在 PROC 中将表参数定义为 OUTPUT [重复]【英文标题】:define table argument as OUTPUT in PROC [duplicate] 【发布时间】:2013-05-31 07:46:25 【问题描述】:

在 PROC 中将表参数定义为 OUTPUT

如何在 PROC 中将表参数定义为 OUTPUT 而不是 READONLY? 如果不可能,还有其他方法可以做到这一点吗?

谢谢!

【问题讨论】:

【参考方案1】:

我认为这应该可行:

CREATE PROCEDURE dbo.usp_MySP
    @TVP CustomTableType READONLY
    AS 
    SET NOCOUNT ON

   --Your Code
   Select * From @TVP


Go

另外,如果你想修改表值参数,那么:

CREATE PROCEDURE dbo.usp_MySP
    @TVP CustomTableType READONLY
    AS 
    SET NOCOUNT ON

    SELECT * INTO #tempTable FROM @TVP; -- copy
    --Your Code (processing)
    SELECT * FROM #tempTable;  --result
GO

【讨论】:

与我对重复的***.com/questions/16851391/…的回答相同 @gbn 好的,知道了...它似乎重复了。 非常感谢!但我的意思是我想将 TVP 定义为 OUT 参数,例如定义 int out 参数 CREATE PROC usp_MySP @i INT OUT AS ...

以上是关于在 PROC 中将表参数定义为 OUTPUT [重复]的主要内容,如果未能解决你的问题,请参考以下文章

sql server 的 out 和output

在 BigQuery 中将长表转换为宽表

怎样在pl/sql中创建,执行和删除存储过程

在 psycopg2 中将表名作为参数传递

如何在过程oracle中将表名设置为参数

在 azure synapse 存储过程中将表名作为参数传递时将查询结果分配给变量