一个奇怪的的问题,望高手指教(分不够可以再加)
我在ASP.NET里连接Oracle数据库,现出现一个问题是SQL语句在Oracle执行有结果,但通过DataReader却读不出返回值,显示错误为:
"由于符号不匹配或数据溢出以外的其他原因,未能转换数据值。例如,数据在数据存储区中已损坏,但该行仍可以检索。 "
程序代码如下:
result=List.GetList(Sql);
int temp2=0;
while(result.Read())
{
temp2=result.GetInt32(0); //出错的语句,应该得到是SQL的返回值
}
被调用函数
public System.Data.OleDb.OleDbDataReader GetList(string Sql)
{
System.Data.OleDb.OleDbConnection DBconn=new System.Data.OleDb.OleDbConnection(PublicFun.PubString.dbconnectionstring);
System.Data.OleDb.OleDbDataAdapter DBcmd=new System.Data.OleDb.OleDbDataAdapter();
System.Data.OleDb.OleDbCommand oleDbSelectCommand1=new System.Data.OleDb.OleDbCommand();
DBcmd.SelectCommand=oleDbSelectCommand1;
DBcmd.SelectCommand.Connection=DBconn;
DBcmd.SelectCommand.CommandText=Sql;
this.OpenDataBase(DBconn);
System.Data.OleDb.OleDbDataReader result =DBcmd.SelectCommand.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
DBcmd.Dispose();
return result;
}
希望高手指点~~若分数不够另开贴加分