游标在定义还是打开时读取数据
2014-03-06 11:19
141 查看
有网友在问这个问题,这很容易证明,测试语句如下
我们来看测试结果
在定义时emp2中数据为空,在打开前我们添加了部门10的数据。可以看出查询到了部门10的信息。
SET serveroutput ON DROP TABLE emp2 PURGE; CREATE TABLE emp2 AS SELECT * FROM emp WHERE 1=2; DECLARE V_DEPTNO NUMBER; CURSOR CUR_EMP2 IS SELECT * FROM EMP2 WHERE DEPTNO = V_DEPTNO; BEGIN DELETE FROM emp2; V_DEPTNO := 10; INSERT INTO EMP2 SELECT * FROM EMP WHERE DEPTNO = 10; FOR CUR IN CUR_EMP2 LOOP DBMS_OUTPUT.PUT_LINE('deptno:' || TO_CHAR(CUR.DEPTNO) || ' ename:' || CUR.ENAME); END LOOP; END; /
我们来看测试结果
SQL> SET serveroutput ON SQL> DROP TABLE emp2 PURGE; Table dropped SQL> CREATE TABLE emp2 AS SELECT * FROM emp WHERE 1=2; Table created SQL> DECLARE 2 V_DEPTNO NUMBER; 3 CURSOR CUR_EMP2 IS 4 SELECT * FROM EMP2 WHERE DEPTNO = V_DEPTNO; 5 BEGIN 6 DELETE FROM emp2; 7 V_DEPTNO := 10; 8 INSERT INTO EMP2 9 SELECT * FROM EMP WHERE DEPTNO = 10; 10 FOR CUR IN CUR_EMP2 LOOP 11 DBMS_OUTPUT.PUT_LINE('deptno:' || TO_CHAR(CUR.DEPTNO) || ' ename:' || 12 CUR.ENAME); 13 END LOOP; 14 END; 15 / deptno:10 ename:CLARK deptno:10 ename:KING deptno:10 ename:MILLER PL/SQL procedure successfully completed
在定义时emp2中数据为空,在打开前我们添加了部门10的数据。可以看出查询到了部门10的信息。
相关文章推荐
- ORA-01466: 无法读取数据 - 表定义已更改
- 读取yuv并转化为RGB数据在Opencv中打开显示
- 用C#编程从数据库中读取图片数据导进Excel文件的方法(如何从数据库中读取保存的文件,直接打开,中间不保存到本地)
- VBA下弹框打开excel文件并读取数据
- 十六进制的胎儿心电数据读取——常规方式打开为乱码,UltraEdit打开可以看到数据
- Oracle 中使用 fetch bulk collect into 批量效率的读取游标数据
- arm-elf-tools 安装时“无法打开 “+43” 读取数据”的解决方法
- Oracle 中使用fetch bulk collect into 批量效率的读取游标数据
- 尝试用OLEDB打开EXCEL表读取数据
- MySQL中游标使用以及读取文本数据
- asp.net中打开Excel上传文件,读取数据的方法
- Oracle 中使用 fetch bulk collect into 批量效率的读取游标数据
- fetch bulk collect into 批量效率的读取游标数据
- Oracle 中使用 fetch bulk collect into 批量效率的读取游标数据
- Demo: Dictionary>> 泛型读取XML文件数据作为数据源(DataSource)绑定到DropDownList控件 定义个一个公用类
- 读取yuv并转化为RGB数据在Opencv中打开显示
- 使用游标读取数据的操作
- 从终端读取一行数据,fgets,gets,c++ string类定义的getline
- sql server 存储使用游标读取数据,按行判断
- fetch bulk collect into 批量效率的读取游标数据 【转载】