2013-12-12 38 views
0

我在sql文件中有一個存儲過程spGetMetricValues。要執行它,我有另外一個文件有以下幾點:將varchar轉換爲數據類型數字

ALTER PROCEDURE [dbo].[spGetMetricValues] 

    EXECQSG.dbo.EXCEL_FUNC 
    @asofdate date, 
    @startdate date, 
    @coupon_type varchar(25), 
    @security_term varchar(25), 
    @metric_type varchar(25), 
    @whose_holding varchar(25), 
    @accretion_type varchar(25), 
    @decomp_method varchar(25) 

    DECLARE @output decimal(28,10) 
    SELECT @output = @query [email protected] is defined in the SP as varchar(1000) 
    RETURN (ISNULL(@output,0)) 
END 

當我執行,我得到一個錯誤

算術溢出錯誤轉換爲varchar到數字

有人能告訴數據我該怎麼做才能解決問題?

+0

我假設你想執行查詢並不僅僅是設置'@ output'到查詢字符串。但是你想'@ output'包含什麼? –

+0

是的,當我嘗試執行查詢時,它給了我那個溢出錯誤。 @output是一個數字值。 – user3018092

+0

但是你沒有執行查詢。你只是設置'@output = @ query' ... –

回答

0

返回將只接受整數數據類型,

RETURN [int] 
相關問題