解决OCI-22053错误溢出的方法
2005-11-14 18:42
573 查看
.NET开发中使用微软的System.Data.OracleClients访问ORACLE数据库时,
如果某字段的精度超出.NET的数据精度,就会发生OCI-22053错误。
在BAIDU上搜索了一番,只发现一个有限的解决方法:
http://www.dotnet247.com/247reference/msgs/50/252139.aspx http://dev.csdn.net/article/73869.shtm http://www.itpub.net/showthread.php?threadid=337574&pagenumber=
如果用fill方法的话,仍然不能解决问题。
经过几天的试验和查找,我找到一个彻底的解决方法:就是使用ORACLE自带的.NET开发包:
Oracle Data Provider For .NET 9.2.0.4.01 (OraWin9204.exe)
这个软件包在ORACLE网站上有免费下载。
Oracle.DataAccess.Client.OracleConnection oracleConnection1 = new Oracle.DataAccess.Client.OracleConnection();
oracleConnection1.ConnectionString =Boco.Common.Lib.Public.Util.ReadConfigString("ConnectionStringNrmdb");
Oracle.DataAccess.Client.OracleDataAdapter da1=new Oracle.DataAccess.Client.OracleDataAdapter(查询语句,oracleConnection1 );
da1.SafeMapping.Add("*",typeof(System.String));
DataSet ds1=new DataSet();
da1.Fill(ds1,"Data");
关键在于红色那一句,在内部对所有字段作了映射,把任意类型的字段都映射为字符串类型。
如果不想把所有字段都作映射,可以选择特定的字段作:
da1.SafeMapping.Add(字段名1,typeof(System.String));
da1.SafeMapping.Add(字段名2,typeof(System.String));
……
如果某字段的精度超出.NET的数据精度,就会发生OCI-22053错误。
在BAIDU上搜索了一番,只发现一个有限的解决方法:
http://www.dotnet247.com/247reference/msgs/50/252139.aspx http://dev.csdn.net/article/73869.shtm http://www.itpub.net/showthread.php?threadid=337574&pagenumber=
如果用fill方法的话,仍然不能解决问题。
经过几天的试验和查找,我找到一个彻底的解决方法:就是使用ORACLE自带的.NET开发包:
Oracle Data Provider For .NET 9.2.0.4.01 (OraWin9204.exe)
这个软件包在ORACLE网站上有免费下载。
Oracle.DataAccess.Client.OracleConnection oracleConnection1 = new Oracle.DataAccess.Client.OracleConnection();
oracleConnection1.ConnectionString =Boco.Common.Lib.Public.Util.ReadConfigString("ConnectionStringNrmdb");
Oracle.DataAccess.Client.OracleDataAdapter da1=new Oracle.DataAccess.Client.OracleDataAdapter(查询语句,oracleConnection1 );
da1.SafeMapping.Add("*",typeof(System.String));
DataSet ds1=new DataSet();
da1.Fill(ds1,"Data");
关键在于红色那一句,在内部对所有字段作了映射,把任意类型的字段都映射为字符串类型。
如果不想把所有字段都作映射,可以选择特定的字段作:
da1.SafeMapping.Add(字段名1,typeof(System.String));
da1.SafeMapping.Add(字段名2,typeof(System.String));
……
相关文章推荐
- OCI-22053: 溢出错误的原因和解决方法
- 在.NET中使用OracleDataAdapter添充数据集报OCI-22053错误溢出解决方法
- 【转】OCI-22053: 溢出错误的原因和解决方法
- OCI-22053: 溢出错误的原因和解决方法
- Oracle OCI-22053:溢出错误解决方法
- Oracle OCI-22053:溢出错误解决方法
- OCI-22053: 溢出错误的原因和解决方法
- Oracle OCI-22053:溢出错误解决方法
- 解决OCI-22053:溢出错误问题
- Oracle OCI-22053:溢出错误 解决时的坑(去其他项目组帮忙时遇到的)
- OCI-22053错误溢出如何解决
- [已解决] Asp.Net+Oracle获取得分分数时,OCI-22053错误溢出
- Oracle OCI-22053:溢出错误解决方法
- Oracle OCI-22053: 溢出错误
- 用OCI方式联接oracle时出现 错误的解决方法。
- phpExcel导出大量数据出现内存溢出错误的解决方法
- DiskGenius的 “终止位置参数溢出”错误解决方法。
- OCI-22053: 溢出错误 的原因和解决方案
- 内存溢出 ---报java heap space错误的解决方法
- DiskGenius的 “终止位置参数溢出”错误解决方法。