我们有一个用Visual Studio 2003开发的.NET程序。它所使用的服务器有一个Oracle 8数据库。该程序与数据库连接工作正常。但是,最近,该应用程序被转移到另一台具有较新版本的Oracle(10g)的服务器上。此迁移后,与数据库的连接停止工作。安装Oracle 8客户端后,连接终于再次运行。但是,现在我们遇到了一个陌生人的问题。
这一点:
OleDbDataReader dbReader = myDB.GetDataReader(strSQLStatement);
dbReader.Read();
int idNum;
idNum = (int) dbReader.GetDecimal(0);
当数据库在Oracle 8中时,这非常有效。但现在,它会抛出一个类型转换异常,并说类型转换无效。可能导致这种情况的原因以及如何解决?