簡體   English   中英

轉換失敗,並在T-SQL中聲明了變量

[英]Conversion failed with a declared variable in T-SQL

嘗試在SQL Server中編寫此存儲過程時出現此錯誤。 對於我的一生,我不知道為什么。 有什么線索嗎?

BEGIN
declare @output varchar(max)

select @output = COALESCE(@output + ',','') + CONVERT(varchar(150), AGE_START)
from tblRaceCategories
where RACE_ID = 13

return @output
END

我得到的錯誤是:

將varchar值'5,8,11,16,21,31,41,51,61,16,21,31,41,51,61'轉換為數據類型int時轉換失敗。

這沒有意義,我已經將@output聲明為varchar ,我已經將AGE_START轉換為varchar 我在這里想念什么?

返回值只能是int類型,這是轉換失敗的地方。

使用輸出變量而不是返回字符串。 例:

create procedure Demo
  @output varchar(max) out
as
...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM