2008-11-05 32 views
0

我有一個Clr用戶定義的類型,它需要一個由逗號隔開的值串。Sql Clr用戶定義類型解析一個浮點數並失去精度

轉換成該類型後,我失去的精確一點點,我已經將範圍縮小到這行代碼:

cast(cast(nlinkjt as nvarchar(100)) + ',' +cast(avglrwf as nvarchar(100)) + ',' + cast(avglrwfjt as nvarchar(100)) as dbo.CLRJourneyTime) as clrJT 

輸出= 29.9376,5.29633e-005,0.00158559

但一部開拓創新的值是像這樣:

nlinkjt = 29.9376097988521 = cast(nlinkjt as nvarchar) = 29.9376 
avglrwf = 5.29632961843163E-05 = cast(avglrwf as nvarchar) = 5.29633e-005 
avglrwfjt = 0.00158559449482709 = cast(avglrwfjt as nvarchar) = 0.00158559 

我怎樣才能彩車轉換爲字符串全部?

還是有聲明新dbo.CLRJourneyTime就像你在.NET 像這樣將另一種方式:

'new dbo.CLRJourneyTime(nlinkjt , avglrwf , avglrwfjt) as clrJT' 

回答

1

好了,剛剛發現的浮欄只存儲大約4位小數反正..所以它可能不會有問題。