我知道有關於這個問題在互聯網上有幾個線程和帖子,我讀過他們(不是每篇文章,我不得不承認),但沒有一個完全滿足我。我正在使用ODP.net(dll版本2.111.6.0)訪問Oracle數據庫(版本10 + 11)和DataReader來檢索數據(.NET 3.5,C#)。我使用ODP.net(dll版本2.111.6.0)訪問Oracle數據庫(版本10 + 11)甲骨文號碼C#十進制
使用在此代碼的結果 ' System.OverflowException(算術運算導致溢出。)'
decimal.TryParse(oraReader.GetOracleDecimal(0).Value.ToString(),
NumberStyles.Any, null, out parsedOraDecimal)
而這一次的結果是 ' 3,000000000000000000000000000000000000000000000000000000000E-126' 的值
decimal.TryParse(oraReader.GetOracleValue(0).ToString(),
NumberStyles.Any, null, out parsedOraDecimal)
現在,我必須找到某種方式來正確地檢索和評估這個價值 - DB也從超出我的控制的其他應用程序使用所以改變是不可能的。
將我的C#代碼中的類型從'decimal'轉換爲'double'也不是真正的選項。
任何想法?
嗨戴夫, 感謝您的提示! – 2010-03-11 13:43:48
這在很大數字上失敗 – Stig 2016-10-07 06:52:53