ユーザー定義関数に次のコード行があります。
declare @annualStr varchar(30)
declare @annual float
begin try
set @annualStr = dbo.GetXMLValues(@businessId,@id)
set @annual = convert(float,isnull(@annualStr,'0'))
end try
begin catch
set @annual = 0
end catch
値は値でdbo.GetXMLValues
ある可能性があるvarchar
ため、try catch ブロックを使用して値をfloat
..に変換する必要があります。
しかし、それはエラーをスローします.. UDF で try catch ブロックを使用することは無効です
どうして??そして、値が不明な場合にvarchar
値を変換するにはどうすればよいですかfloat