.net在读取oracle数据库时用read()方法读到最后条一记录时抛出ORA-01002的异常
发布网友
发布时间:2022-04-08 00:55
我来回答
共4个回答
热心网友
时间:2022-04-08 02:25
ORA-01002异常,做以下检查:
1、是否从指针读取数据,即使是在最后一行已经被检索之后,并且返回ora 1403错误信息?如果是的话,在最后一行被检索之后不要再进行读取。
2、指针是否是在for update 子句中公开了?如果是的话,那么如果commit语句是在循环里面,那么在commit之后读取就会返回这个错误信息。不要在读取循环中使用commit。
3、是否重新绑定了任意的占位符变量?然后在再次执行这个语句之前进行读取,即返回这个错误信息。这样的话,需要做的事情就是再次执行它,在重新绑定了and之后再读取。
热心网友
时间:2022-04-08 03:43
oracle数据不是和sqlserver一样的~~ 关键是看他目录里面的配置ini 以及几个ora文件。。环境变量只是拿来看能不能正常运行打开他的服务,查看他的数据,如果你能够用pl sql直接在oracle查数据,那就是你的C#代码有问题了
热心网友
时间:2022-04-08 05:17
原因可能有这几点:
1)你是否从指针读取数据,即使是在最后一行已经被检索之后,并且返回ORA 1403错误信息?如果是的话,在最后一行被检索之后不要再进行读取。
2)指针是否是在FOR UPDATE 子句中公开了?如果是的话,那么如果COMMIT语句是在循环里面,那么在commit之后读取就会返回这个错误信息。不要在读取循环中使用commit。
3)你是否重新绑定了任意的占位符变量?然后在再次执行这个语句之前进行读取,即返回这个错误信息。这样的话,你需要做的事情就是再次执行它, 在重新绑定了AND之后再读取。
热心网友
时间:2022-04-08 07:09
有可能两个系统的Oracle的client不一样。
那就不用read方法,直接用DataSet读取数据,再循环读取数据好了。