oracle中select into 与fecth into 在给变量赋值时的区别在哪儿?
2个回答
展开全部
fetch是游标。。我们所说的游标一般指的是显式游标
个人看法是select...into选择一行。。。他属于隐式游标,不能人为控制
select ..into 语句结果必须有且只能有一行。 如果查询没有返回行,PL/SQL将抛出no_data_found异常。如果查询返回多行,则抛出 too_many_rows 异常。如果抛出异常,则停止执行,控制权转移到异常处理部分(没有 异常处理,则程序中断)。在引发异常时,将不使用属性%found,%notfound,%rowcount来查明DML语句是否 已影响了行数
如果要将某一个结果集逐一地读取一条记录的话用游标,fetch 是提取结果集中一行记录存储在变量中。每次提取之后,结果集指针 就向前移动一行。
个人看法是select...into选择一行。。。他属于隐式游标,不能人为控制
select ..into 语句结果必须有且只能有一行。 如果查询没有返回行,PL/SQL将抛出no_data_found异常。如果查询返回多行,则抛出 too_many_rows 异常。如果抛出异常,则停止执行,控制权转移到异常处理部分(没有 异常处理,则程序中断)。在引发异常时,将不使用属性%found,%notfound,%rowcount来查明DML语句是否 已影响了行数
如果要将某一个结果集逐一地读取一条记录的话用游标,fetch 是提取结果集中一行记录存储在变量中。每次提取之后,结果集指针 就向前移动一行。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询