2012-10-08 139 views
0

我會很感激這裏的第三隻眼睛。我有一個存儲過程來執行,但我得到的消息錯誤數據類型爲varchar轉換爲數字時,我用下面的值來執行它SQL - 將數據類型數字轉換爲數字時出錯。

  EXECUTE packaging 
       @ID out, -- uniqueidentifier 
       @ProductID, --uniqueidentifier 
       @PackagingIN, --numeric(14,0) 
       @BarCodeInd, --nchar(1) 
       @GrossWeightperPack, --numeric(14,0) 
       @UMPID, --uniqueidentifier 
       @Height, --numeric(8,0) 
       @UMPID1, --uniqueidentifier 
       @Width, --numeric(8,0) 
       @UMPID2, -- uniqueidentifier 
       @Length, --numeric(8,0) 
       @UMPID3, --uniqueidentifier 
       1,  --int 
       1, --int 
       @statusid, 
       @counter out --int 

執行包裝「0904AC11-7B0D-4326-A67B-49639DF6672C」,「57925472 -5F79-424E-806A-47F8B73DAE02' ,57582682639272, '', '',NULL, '',空 '' 空 '' 空 '',1,1,「B5266344-286E-46FE-91D1-35DEEDCD6063 」,@counter

+0

您傳遞值'「」'的參數'@ GrossWeightperPack'它被定義爲「數字(14,0)」。可能是這個問題。 –

+0

@GrossWeightperPack傳遞爲'',它不會轉換爲數字(14,0)... –

+0

我應該如何傳遞它?由於我從前端發送值,如果它是空或空的,我應該發送什麼? – Kobojunkie

回答

0

你有幾個數字參數傳遞的空字符串‘’

傳遞一個數值,如您對PackagingIN參數,或傳遞null

例子:

Execute packaging '0904AC11-7B0D-4326-A67B-49639DF6672C', '57925472-5F79-424E-806A-47F8B73DAE02', 57582682639272, '', null, null, null, null, null,null, null,null,null, 1, 1, 'B5266344-286E-46FE-91D1-35DEEDCD6063', @counter 

避免將空字符串(除非需要),因爲他們將某處你絆倒沿線

相關問題