oracle存储过程中游标的问题
oracle存储过程中一游标定义为:
CURSOR MANU_BOM_ITEM IS
SELECT vcAspID,vcGoodsID,vcGoodsName,vcChildBomID,vcBomItemHelpCode FROM TB_MANU_BOM_ITEM WHERE vcBomID = v_vcBomID AND vcAspID=v_aspID;
................
open MANU_BOM_ITEM ;
fetch MANU_BOM_ITEM into v_vcAspID,v_vcGoodsID,v_vcGoodsName,v_vcChildBomID,v_vcBomItemHelpCode;
while MANU_BOM_ITEM%found loop
...............
end loop;
close MANU_BOM_ITEM ;
..............
我在pl/sql 中测试时,执行到while MANU_BOM_ITEM%found loop后,就直接执行close MANU_BOM_ITEM ,也就是游标没有记录集返回;但我在sql窗口中直接执行游标里的select语句:
SELECT vcAspID,vcGoodsID,vcGoodsName,vcChildBomID,vcBomItemHelpCode FROM TB_MANU_BOM_ITEM WHERE vcBomID = v_vcBomID AND vcAspID=v_aspID;
是有记录集的.
真是奇怪,哪位高手指点下?
CURSOR MANU_BOM_ITEM IS
SELECT vcAspID,vcGoodsID,vcGoodsName,vcChildBomID,vcBomItemHelpCode FROM TB_MANU_BOM_ITEM WHERE vcBomID = v_vcBomID AND vcAspID=v_aspID;
................
open MANU_BOM_ITEM ;
fetch MANU_BOM_ITEM into v_vcAspID,v_vcGoodsID,v_vcGoodsName,v_vcChildBomID,v_vcBomItemHelpCode;
while MANU_BOM_ITEM%found loop
...............
end loop;
close MANU_BOM_ITEM ;
..............
我在pl/sql 中测试时,执行到while MANU_BOM_ITEM%found loop后,就直接执行close MANU_BOM_ITEM ,也就是游标没有记录集返回;但我在sql窗口中直接执行游标里的select语句:
SELECT vcAspID,vcGoodsID,vcGoodsName,vcChildBomID,vcBomItemHelpCode FROM TB_MANU_BOM_ITEM WHERE vcBomID = v_vcBomID AND vcAspID=v_aspID;
是有记录集的.
真是奇怪,哪位高手指点下?
...全文
相关推荐
ORACLE 游标使用示例
在"游标.txt"文件中,可能包含了更多关于Oracle游标的使用实例和技巧,包括游标的声明、动态游标、游标变量、游标表达式以及游标在存储过程和函数中的应用。
CMake与Make的区别及使用说明
CMake是一个跨平台的构建工具,它使用CMakeLists.txt文件来描述项目的构建规则。Make是一个早期的构建工具,它使用Makefile来描述项目的构建规则。通过执行make命令,Make工具会读取Makefile并根据规则执行相应的操作,以便生成目标文件或可执行文件。在这个示例中,CMakeLists.txt定义了一个名为app的项目,它包含了main.c和utils.c这两个源文件。命令,Make工具会读取生成的Makefile并执行构建操作,生成可执行文件app。
利用游标返回结果集的的例子(Oracle 存储过程).doc
在Oracle数据库中,游标是一种重要的工具,用于处理和返回多行结果集。在这个例子中,我们将探讨如何通过存储过程和游标返回结果集。
Oracle存储过程游标用法分析
Oracle存储过程中的游标是数据库操作中非常重要的一个概念,特别是在处理批量数据或者需要逐行处理查询结果时。游标允许我们动态地控制查询结果集,逐行读取和操作数据,而不需要一次性加载所有结果。
ORACLE存储过程最全教程
通过学习本教程,你将能够熟练地创建、调用和管理Oracle存储过程,解决复杂的业务问题,提升数据库应用的效率和安全性。


