SQL> CREATE TABLE emp (
2 id NUMBER PRIMARY KEY,
3 fname VARCHAR2(50),
4 lname VARCHAR2(50)
5 );
Table created.
SQL>
SQL> INSERT INTO emp (id, fname, lname)VALUES (1, 'A', 'B');
1 row created.
SQL> INSERT INTO emp (id, fname, lname)VALUES (2, 'C', 'D');
1 row created.
SQL> INSERT INTO emp (id, fname, lname)VALUES (3, 'Enn', 'F');
1 row created.
SQL> INSERT INTO emp (id, fname, lname)VALUES (4, 'G', 'H');
1 row created.
SQL> INSERT INTO emp (id, fname, lname)VALUES (5, 'G', 'Z');
1 row created.
SQL>
SQL>
SQL> SET SERVEROUTPUT ON ESCAPE OFF
SQL>
SQL> DECLARE
2
3 fnameValue emp.fname%TYPE;
4
5
6
7 CURSOR emp_cur1 IS SELECT fname FROM emp WHERE fname like 'Ron%';
8
9 CURSOR emp_cur2 IS SELECT fname FROM emp WHERE fname like 'Ron%';
10
11 BEGIN
12
13 OPEN emp_cur1;
14 UPDATE emp SET fname = 'AAA' WHERE fname = 'Ron';
15
16 OPEN emp_cur2;
17
18 FETCH emp_cur1 INTO fnameValue;
19 DBMS_OUTPUT.PUT_LINE(fnameValue);
20
21 FETCH emp_cur2 INTO fnameValue;
22 DBMS_OUTPUT.PUT_LINE(fnameValue);
23
24 CLOSE emp_cur1;
25 CLOSE emp_cur2;
26
27 ROLLBACK;
28
29 END;
30 /
PL/SQL procedure successfully completed.
SQL> drop table emp;
Table dropped.
|