OUT 和 OUTPUT 的区别

问题描述 投票:0回答:1

在使用 SQL Server 的应用程序中,我遇到了同时使用 OUT 和 OUTPUT 参数的代码。

 @Id   INT OUT,
 @PnNo   VARCHAR(10)  OUTPUT,

OUT 和 OUTPUT 参数有什么区别。

sql sql-server tsql
1个回答
6
投票

正如评论中所指出的,这两个是同义词。从文档中,该子句的语法如下所示:

        [ VARYING ] [ = default ] [ OUT | OUTPUT | [READONLY] ]

因此这表示可以为参数的属性提供

OUT
OUTPUT
(或
READONLY
)。然后将它们记录如下:

出 | OUTPUT 表示该参数是输出参数。使用 OUTPUT 参数将值返回给过程的调用者。 [类型] text、ntext 和 image 参数不能用作 OUTPUT 参数,除非该过程是 CLR 过程。输出参数可以是游标占位符,除非该过程是 CLR 过程。表值数据类型不能指定为过程的 OUTPUT 参数。

管道 (

|
) 在这里表示“或”,因此可以使用其他
OUT
OUTPUT
,但两者都被记录为执行相同的操作。因此,您使用哪一种取决于您自己,但是,我个人建议您保持一致并坚持使用其中一种(或者至少在同一对象中使用相同的一种以避免混淆)。

© www.soinside.com 2019 - 2024. All rights reserved.