c#oracle数组超出,c# – ODP.net填充数据集时的Oracle Decimal Number精度问题.异常:算术运算导致溢出...
我在c#.net 2(Visual Studio 2005 SP1)中工作,嘗試使用來自O(shè)racle10g數(shù)據(jù)庫(kù)的select * from table的結(jié)果填充數(shù)據(jù)集. .net框架,IDE和數(shù)據(jù)庫(kù)不能在此客戶端站點(diǎn)更改.
我使用ODP.net提供商連接,dll版本是2.102.2.20
當(dāng)我運(yùn)行fill命令時(shí),我得到一個(gè)例外:
算術(shù)運(yùn)算導(dǎo)致溢出
另外,如果我嘗試查看Visual Studio設(shè)計(jì)器中的違規(guī)列(顯示表數(shù)據(jù)),我得到表中此列的每一行.如果我的查詢使用整數(shù)選擇其他列,例如省略此列,代碼就會(huì)很好地工作.
當(dāng)我從Toad的數(shù)據(jù)庫(kù)中查看該列時(shí),數(shù)據(jù)看起來像:
919.742866695572
我需要精確度,因?yàn)樗枰粋€(gè)蒙特卡羅模擬.
如果不使用數(shù)據(jù)適配器來填充datatable,我使用datareader并調(diào)用dataReader.getValue(columnIndex)我得到相同的錯(cuò)誤,但是如果我調(diào)用dataReader.GetOracleDecimal(columnIndex),那么我得到我正在尋找的結(jié)果,沒有錯(cuò)誤.
我寧愿使用數(shù)據(jù)適配器和填充數(shù)據(jù)集(注意這些是非類型數(shù)據(jù)集,因?yàn)槲覠o法使自動(dòng)生成的強(qiáng)類型數(shù)據(jù)集從oracle數(shù)據(jù)庫(kù)工作).我不想使用datareader并瀏覽結(jié)果(選出列值),因?yàn)槲艺趪L試將其寫為通用方法,用于許多方案,無論列數(shù)如何,都需要具體的十進(jìn)制列索引通過數(shù)據(jù)類型獲取通話.
誰能幫忙?
可以使用新版本的ODP.net dll連接到舊的Oracle10g數(shù)據(jù)庫(kù)嗎?我想知道這是否會(huì)有所幫助.
謝謝
總結(jié)
以上是生活随笔為你收集整理的c#oracle数组超出,c# – ODP.net填充数据集时的Oracle Decimal Number精度问题.异常:算术运算导致溢出...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三国人物共现网络
- 下一篇: C# Xamarin For Andro