C#代码中查询数据库的时候出现ORA-01002: fetch out of sequence错误

SHARPSEVEN 2012-03-13 09:49:40


public DataSet getBargePerformance_BPCS_daily(string personName, string sparcsCode, string classes, string equipmentNum, string actualEndTime, DateTime startTime,DateTime endTime)
{
DataSet ds = new DataSet();

con.Open();

string strsqlBarge = "select ..(此处省略的select的语句)";//最终执行的SQl语句

strsqlBarge = strsqlBarge;

com.CommandText = strsqlBarge;

odr.SelectCommand = com;//执行以上SQL语句

try
{
odr.Fill(ds);//放到DataSet中
return ds;

}
catch (SqlException exe)
{
MessageBox.Show("" + exe);
return null;
}
finally
{
con.Close();
}
}




如上面的代码,代码的从数据库中查询数据(注:只是select数据,没有更新操作),但是代码到odr.Fill(ds);就出错了,提示的错误是:ORA-01002: fetch out of sequence。oracle的错误
找了半天百度google还是没能搞明白,小弟数据库不行哦。还有就是,我select的两个表是从SQL Server中映射到oracle的,在oracle中都可以正常查询,上面的sql语句,我单独在oracle中运行都是正常的,没有报错,但是放到程序中就出错了。
...全文
482 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
EnForGrass 2012-03-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sharpseven 的回复:]

引用 1 楼 chinajiyong 的回复:

1、看看你是不是已经关闭了游标,然后执行了fetch
2、看看你是不是在commit或者rollback后使用游标


在百度,我看到过你这个答案,但是我不明白怎么去弄游标
[/Quote]
你看一下你的
你找一下DECLARE CursorBank CURSOR SCROLL //定义游标
SHARPSEVEN 2012-03-13
  • 打赏
  • 举报
回复
[Quote=引用楼主 sharpseven 的回复:]
C# code


public DataSet getBargePerformance_BPCS_daily(string personName, string sparcsCode, string classes, string equipmentNum, string actualEndTime, DateTime startTime,DateTime endTime)
{……
[/Quote]

难道说odr.SelectCommand = com;这句之后,游标被关闭了??
SHARPSEVEN 2012-03-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 chinajiyong 的回复:]

1、看看你是不是已经关闭了游标,然后执行了fetch
2、看看你是不是在commit或者rollback后使用游标
[/Quote]

在百度,我看到过你这个答案,但是我不明白怎么去弄游标
EnForGrass 2012-03-13
  • 打赏
  • 举报
回复
1、看看你是不是已经关闭了游标,然后执行了fetch
2、看看你是不是在commit或者rollback后使用游标

111,114

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧