甲骨文:算术运算导致溢出 [英] Oracle: Arithmetic operation resulted in an overflow

查看:1015
本文介绍了甲骨文:算术运算导致溢出的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的查询拉两个字符串 - 没有数字类型可言,但Oracle客户端给了我上面的异常。任何想法?

下面是查询 - 所有字段都是字符串:

  SELECT PROJECT_NAME
        ,PROJECT_TITLE
        ,PROJECT_NAME作为JOB2
        ,PROJECT_NAME作为作业1
 从PROJ
 

下面是例外:

 出现System.OverflowException:算术运算导致溢出。
   在System.Data.Odbc.OdbcDataReader.FirstResult()
   在System.Data.Odbc.OdbcCommand.ExecuteReaderObject(的CommandBehavior行为,串法,布尔needReader,对象[] methodArguments,SQL_API odbcApiMethod)
   在System.Data.Odbc.OdbcCommand.ExecuteReaderObject(的CommandBehavior行为,串法,布尔needReader)
   在System.Data.Odbc.OdbcCommand.ExecuteReader(的CommandBehavior行为)
   在System.Data.Odbc.OdbcCommand.ExecuteDbDataReader(的CommandBehavior行为)
   在System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(的CommandBehavior行为)
   在System.Data.Common.DbDataAdapter.FillInternal(数据集的数据集,数据表[]的数据表,的Int32 startRecord用于,的Int32最大记录,字符串srcTable要,IDbCommand的命令的CommandBehavior行为)
   在System.Data.Common.DbDataAdapter.Fill(数据集数据集的Int32 startRecord用于,的Int32最大记录,字符串srcTable要,IDbCommand的命令的CommandBehavior行为)
   在System.Data.Common.DbDataAdapter.Fill(数据集数据集)
   在Partners.Core.Data.Database.FillDataSet;在C(数据集和放大器的数据集,IDbCommand的命令字符串[]表名):\ Dropbox的\ SVN \ \合作伙伴库\内部\ Partners.Core \ DATA \ Database.cs:行999
 

解决方案

现在我还记得,我以前见过这种拍摄。 Oracle客户端只有32位。所以我的.NET应用程序需要被编译的x86。很烦人!而该消息是如此的欺骗性。

My query pulls two strings - no numeric types at all, yet the Oracle client gives me the exception above. Any ideas?

Here is the query - all fields are strings:

 SELECT project_name 
        , project_title
        , project_name as Job2   
        , project_name as Job1  
 FROM PROJ

Here is the exception:

System.OverflowException: Arithmetic operation resulted in an overflow.
   at System.Data.Odbc.OdbcDataReader.FirstResult()
   at System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method, Boolean needReader, Object[] methodArguments, SQL_API odbcApiMethod)
   at System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method, Boolean needReader)
   at System.Data.Odbc.OdbcCommand.ExecuteReader(CommandBehavior behavior)
   at System.Data.Odbc.OdbcCommand.ExecuteDbDataReader(CommandBehavior behavior)
   at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
   at Partners.Core.Data.Database.FillDataSet(DataSet& dataSet, IDbCommand command, String[] tableNames) in c:\Dropbox\svn\partners\libraries\internal\Partners.Core\Data\Database.cs:line 999

解决方案

Shoot now I recall that I have seen this before. The Oracle client is 32-bit only. And so my .NET app needs to be x86 compiled. So annoying! And the message is so deceptive.

这篇关于甲骨文:算术运算导致溢出的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆