工程蝨企圖將 varchar 轉至 decimal(9,5) 發生錯誤
訊息 8114,層級 16,狀態 5,行 1
將資料類型從 varchar 轉換到 numeric 時發生錯誤。
官方文獻:
當非數值的 char、nchar、varchar 或 nvarchar 資料轉換成 int、float、numeric 或 decimal 時,SQL Server 會傳回一則錯誤訊息。當空字串 (" ") 轉換成 numeric 或 decimal 時,SQL Server 也會傳回一則錯誤。 ( CAST 和 CONVERT (Transact-SQL) )
雖然官方這樣說
可是工程蝨還是需要把 varchar 轉成 decimal(9,5)
試著排除 NULL,空字串 ' '
錯誤仍然存在
最後在網路上查到的解法,先用 PATINDEX 驗證資料,再進行轉換
好樣的工程蝨
回覆刪除