-1

我正在使用 2008 R2,我想将“Select Colname from tablename”的输出设置为一个可验证的即。@resultvar,所以我可以在存储过程中进一步使用它。

4

2 回答 2

1

如果您只对单个值感兴趣,那么它很简单:

DECLARE @resultVar    nvarchar(50)  -- or whatever
SELECT @resultVar = Colname FROM tablename -- with appropriate filtering

如果您需要从存储过程中获取此信息,则需要查看 OUTPUT 参数:

CREATE procedure MyProcedure
    @resultVar    nvarchar(50)    OUTPUT
AS
    SELECT @resultVar = Colname FROM tablename -- with appropriate filtering

如果您使用 SQL 运行该过程,则可以使用:

EXEC MyProcedure @var OUTPUT

显然,如果您使用的是 Entity Framework 之类的框架,那么您需要使用该框架提供的任何内容;但是,这是一个完全独立的问题。

请注意,如果从 tablename 返回多行,您将只能从第一行获取值。如果比这更复杂,请扩展原始问题。

于 2013-07-09T14:17:08.303 回答
0

您可以使用这样的简单代码:

DECLARE @resultvar AS VARCHAR(64) --or any other type you need
SELECT @resultvar = ColName FROM TableName WHERE --filter on table
PRINT @resultvar
于 2013-07-09T14:19:23.607 回答