![](/img/trans.png)
[英]SQL Server stored procedure - error converting data type varchar to datetime
[英]Error converting data type varchar to numeric in my SQL Server stored procedure
我寫了這個存儲過程並試圖檢索數據。 但我收到此錯誤:
消息 8114,級別 16,狀態 5,過程 spMobileOperationsNew,第 0 行 [批處理開始第 0 行]
將數據類型 varchar 轉換為數字時出錯。
你能幫我解決這個問題嗎?
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[spMobileOperationsNew]
@action AS nvarchar(50),
@territorycode nvarchar(10) = '',
@disYear AS int = '',
@disMonth AS nvarchar(10) = '',
@territoryTarget AS decimal(18, 2) = '',
@terDiscRate AS decimal(5, 2) = '',
@maxDiscRate AS decimal(5, 2) = '',
@minBill AS decimal(18, 2) = '',
@allocateBudget AS decimal(18, 2) = '',
@actualValue AS decimal(18, 2) = '',
@actDiscValue AS decimal(18, 2) = '',
@finalBudget AS decimal(18, 2) = ''
AS
BEGIN
SET NOCOUNT ON;
IF (@action = 'Get_TerritoryWiseTradeDiscount')
BEGIN
PRINT ('get territory')
SELECT
LTRIM(RTRIM(tt.[TerCode])) AS [TerCode],
tt.[Year],
(CASE tt.[Month]
WHEN 'January' THEN 1
WHEN 'February' THEN 2
WHEN 'March' THEN 3
WHEN 'April' THEN 4
WHEN 'May' THEN 5
WHEN 'June' THEN 6
WHEN 'July' THEN 7
WHEN 'August' THEN 8
WHEN 'September' THEN 9
WHEN 'October' THEN 10
WHEN 'November' THEN 11
WHEN 'December' THEN 12
END) AS [Month],
tt.[MaxDiscRt], tt.[MinBillVal], tt.[TerTgt],
tt.[TerDiscRt], tt.[AllDiscBud], tt.[ActVal],
tt.[ActDiscVal], tt.[FinalDiscBudget]
FROM
TerritoryWiseTradeDiscount AS tt
WHERE
tt.[TerCode] = @territorycode
AND tt.[Year] = @disYear
AND tt.[Month] = @disMonth
END
END
當我執行這一行
EXEC [dbo].[spMobileOperationsNew]'Get_TerritoryWiseTradeDiscount','KEG',2021,'November'
我收到上面顯示的錯誤。
ALTER PROCEDURE [dbo].[spMobileOperationsNew]
@action as nvarchar(50),
@territorycode nvarchar(10)='',
@disYear as int = '',---?????? may be 0
@disMonth as nvarchar(10)= '',
@territoryTarget as decimal(18,2) ='',---????? may be 0.00
@terDiscRate as decimal(5,2) ='',--???? may be 0.00
@maxDiscRate as decimal(5,2) ='',--may be 0.00
@minBill as decimal(18,2) ='',--may be 0.00
@allocateBudget as decimal(18,2) ='',--may be 0.00
@actualValue as decimal(18,2) ='',--may be 0.00
@actDiscValue as decimal(18,2) ='',--may be 0.00
@finalBudget as decimal(18,2) =''--may be 0.00
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.