从SQL Server存储过程返回varchar

时间:2012-02-21 10:08:04

标签: sql-server

我有一个存储过程,它返回一个整数值。

我可以返回varchar而不是int吗?有没有办法将varchar值返回给调用过程?

3 个答案:

答案 0 :(得分:4)

select cast(123 as varchar(11))

答案 1 :(得分:3)

你有几个选择:

使用输出参数:

http://msdn.microsoft.com/en-us/library/ms378108.aspx

或只是select末尾的varchar值,用于返回单行/单字段表中的数据。

答案 2 :(得分:0)

这真的让我感到惊讶,为什么我到处都没有把mentios变成一个简单的事实,你可以像这样声明它

CREATE SP_foo
AS
  BEGIN
RETURN 'muajaja'
  END
GO

你可以打电话给这样的话:

DECLARE @r varchar(255)
EXEC @r = SP_foo

我不知道NOBODY是否像这样提到它,因为它可能不属于T-SQL标准本身?甚至MS文档也说了weird

  

RETURN [integer_expression]

     

<强>整数 _expression   是返回的整数值。存储过程可以将整数值返回给调用过程或应用程序

但是嘿!只要它有效,对吧?