for in 循环 相当于游标的使用,这里的i不用定义如下:for i in (select id from table where name='张伟') loopdbms_output.putline(I.id);end loop; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼上正解 for i in (select id from table where name='张伟') 是指在对所有在该SQL语句的i值进行循环操作 -- 两种用法-- 1 , 就是你现在用的这种for i in () -- 这里的 i 就是一个记录-- 2,步长行 for i in 1..100 loop ; -- to do end loop -- to do 执行 100 次 CURSOR C_INFO IS select id from table where name='张伟';V_INFO C_INFO;那个I就相当于V_INFO这个变量 这里相当于一个游标,当i满足后面括号里面查询结果则执行下面的循环(loop)。select是在需要具体满足某些特定条件时候使用 for i in (select id from table where name='张伟')loop ...end loop;其实这就是饮式游标的方法,oracle自动管理游标的开关数据取出等,但是推荐还是使用显式游标手动控制,减小oracle消耗。 隐式游标,仅能在PL/SQL,存储过程或者自定义函数使用。常规的SQL是不能使用的。 电信项目的一个存储过程sql语句,求大神指导。。。。。。。。。。。。。。。。 控制文件的备份! oracle中括号是否有优先级作用? 动态SQL的一个问题 请问分页查找如何实现?用SQL语句 安装oracle 9.2时提示我“C:\Documents and Settings\用户名\Local Settings\Temp\没有足够的磁盘空间,怎么回事? 创建包需要那些权限 查询数据时出现Message: ORA-01722:的问题 基础问题 不好意思 小弟只有10分了 时间的表示 怎样分割呢? ORA-01480:STR 绑定值的结尾Null字符缺失,网上找了很多,一一不如人意,特此求贴
-- 两种用法
-- 1 , 就是你现在用的这种
for i in ()
-- 这里的 i 就是一个记录-- 2,步长行
for i in 1..100
loop ;
-- to do
end loop
-- to do 执行 100 次
select id from table where name='张伟';
V_INFO C_INFO;
那个I就相当于V_INFO这个变量
loop
...
end loop;
其实这就是饮式游标的方法,oracle自动管理游标的开关数据取出等,但是推荐还是使用显式游标手动控制,减小oracle消耗。
常规的SQL是不能使用的。