说明定义游标cursor时的select语句里可以用变量
2013-12-03 17:28
369 查看
6. HELLODBA.COM>declare
7. 2 cursor vc is select t2.extent_id, t1.block_add, t1.cnt
8. 3 from(select to_char(dbms_utility.make_data_block_address(dbms_ro
wid.rowid_relative_fno(ROWID),
9. 4 dbms_ro
wid.rowid_block_number(ROWID)),
10. 5 'XXXXXXXX') block_add,
11. 6 dbms_rowid.rowid_relative_fno(ROWID) relative_fno,
12. 7 dbms_rowid.rowid_block_number(ROWID) block_number,
13. 8 count(1) cnt
14. 9 from &&owner..&&tabname
15. 10 group by dbms_rowid.rowid_relative_fno(ROWID) ,
16. 11 dbms_rowid.rowid_block_number(ROWID)
17. 12 ) t1,
18. 13 demo.tmp_extents t2
19. 14 where t1.relative_fno = t2.relative_fno
20. 15 and t1.block_number >= t2.block_id and t1.block_number < t2.block
_id + t2.blocks
21. 16 order by t2.extent_id, block_add;
22. 17 comp_cnt pls_integer:=-1;
23. 18 array_size pls_integer:=15;
24. 19 total_io pls_integer:=1;
语句说明:
上述语句,说明定义游标cursor时的select语句里可以用变量。
&&owner..&&tabname ,其中的两点是什么意思?
两点中的第一个点是转义符,在两个替换变量之间的点号需要被转义的。
例如,&&owner的值为scott,&&tabname
的值为test,则&&owner..&&tabname
表示为scott.test
详见《Oracle 辑读写深入分析》
7. 2 cursor vc is select t2.extent_id, t1.block_add, t1.cnt
8. 3 from(select to_char(dbms_utility.make_data_block_address(dbms_ro
wid.rowid_relative_fno(ROWID),
9. 4 dbms_ro
wid.rowid_block_number(ROWID)),
10. 5 'XXXXXXXX') block_add,
11. 6 dbms_rowid.rowid_relative_fno(ROWID) relative_fno,
12. 7 dbms_rowid.rowid_block_number(ROWID) block_number,
13. 8 count(1) cnt
14. 9 from &&owner..&&tabname
15. 10 group by dbms_rowid.rowid_relative_fno(ROWID) ,
16. 11 dbms_rowid.rowid_block_number(ROWID)
17. 12 ) t1,
18. 13 demo.tmp_extents t2
19. 14 where t1.relative_fno = t2.relative_fno
20. 15 and t1.block_number >= t2.block_id and t1.block_number < t2.block
_id + t2.blocks
21. 16 order by t2.extent_id, block_add;
22. 17 comp_cnt pls_integer:=-1;
23. 18 array_size pls_integer:=15;
24. 19 total_io pls_integer:=1;
语句说明:
上述语句,说明定义游标cursor时的select语句里可以用变量。
&&owner..&&tabname ,其中的两点是什么意思?
两点中的第一个点是转义符,在两个替换变量之间的点号需要被转义的。
例如,&&owner的值为scott,&&tabname
的值为test,则&&owner..&&tabname
表示为scott.test
详见《Oracle 辑读写深入分析》
相关文章推荐
- 【PLSQL】变量声明,结构语句,cursor游标
- SQLServer游标(Cursor)简介和使用说明 及全局变量说明和功能
- if-else语句省略{}时不可以定义变量,否则报错
- SQLServer游标(Cursor)简介和使用说明 及全局变量说明和功能
- 游标cursor,游标循环和记录变量的定义
- oracle游标中可以定义变量
- 有时候为了方便sql语句的对比和查询,我们可以使用declare来定义变量 上下篇的问题
- “SELECT TOP N *”语句中“N”不能为变量的解决方案
- CSS中的属性可以用变量来定义嘛
- (转载)php的类中可以不定义成员变量,直接在构造方法中使用并赋值吗?
- select语句语法&说明
- SQL游标(cursor)详细说明及内部循环使用示例
- Atitit. 构造ast 语法树的总结attilax oao 1. Ast结构树形12. ast view (自是个160k的jar )22.1. 多条语句ast结构22.2. 变量定义 int b,c; 的ast结构22.3. 方法调用meth1(a=1,b=2,c=3); 的ast结构23. 误解的问题33.1. 语法书子能是个二叉树,实际上多叉树越好..33.2. 非要不个ast放到个s
- 定义结构体的时候,里面的变量可以同时初始化吗?
- const定义的变量,可以作为数组[ ]里面的值吗?
- Oracle PLSQL Demo - 08.定义显式游标[Define CURSOR, Open, Fetch, Close CURSOR]
- 大数组定义在main函数中不能执行,为什么将其定义为全局变量就可以执行?
- SQL允许你用EXECUTE执行一个变量中定义的SQL语句,并且允许你在被执行的SQL语句中,再次嵌套入一个变量定义的语句,并且再次在其中用EXECUTE执行它
- oracle 隐式游标,显示游标,游标循环,动态SELECT语句和动态游标,异常处理,自定义异常,
- 使用select 变量递归能代替使用游标