oracle - Oracle在循环期间修改游标值
问题描述
以下代码编译并工作:
begin
for l in (select 1 as v
from dual
union
select 2 as v
from dual
union
select 3 as v
from dual) loop
if l.v = 3 then
l.v := 3.14; -- > modify the cursor value ?!
end if;
dbms_output.put_line('=> ' || l.v);
end loop;
end;
=> 1
=> 2
=> 3.14
在循环中执行此操作是否是一种好习惯,例如修改光标的值?
这样做有什么影响?如果我在游标中声明了select
,当我再次读取游标时它会修改值吗?
谢谢
解决方案
推荐阅读
- python - 如何使用 aiohttp Web 服务器设置日志记录
- android - 用 6 个图像画一个圆圈
- google-bigquery - BigQuery MERGE 意外的行重复
- android - 打开电子邮件客户端进行阅读
- windows-7 - IIB - ODBC DSN 配置错误 (Windows)
- django - 在 Heroku 上部署 Django 的问题
- sql - 如何限制使用 oracle 更新的列数?
- angular - 如何隐藏inappbrowser位置网址
- java - 没有 groupId 和 artifactId 的 Maven 将文件上传到 Nexus repo
- http - Flutter 如何知道有没有新帖子?