如標題所述,以下程式是先假設自己有一個方法,呼叫此方法時會傳入要轉型的@Type以及要轉型的值@Value,依照判斷做轉型後回傳@ReturnValue。
目前上網找了資料,統整成以下判斷,但尚有些不清楚要轉型成什麼的部份,與不知道以下資料其正確性,或是否有更好的寫法,還請給予指正,謝謝!
不清楚的部分 : sbyte、uint、long、ulong、short、ushort
if N'bool'=@Type
begin
set @ReturnValue=convert(bit, @Value)
end
else if N'byte'=@Type
begin
set @ReturnValue=convert(varbinary, @Value)
end
else if N'char'=@Type
begin
set @ReturnValue=convert(char, @Value)
end
else if N'decimal'=@Type
begin
set @ReturnValue=convert(decimal, @Value)
end
else if N'double'=@Type
begin
set @ReturnValue=convert(float, @Value)
end
else if N'float'=@Type
begin
set @ReturnValue=convert(float, @Value)
end
else if N'int'=@Type
begin
set @ReturnValue=convert(int, @Value)
end
else if N'DateTime'=@Type
begin
set @ReturnValue=convert(datetime, @Value)
end
else
begin
set @ReturnValue=convert(String, @Value)
end
不清楚的部分 : sbyte、uint、long、ulong、short、ushort