--写点SB的东西 SQL> ed 已写入 file afiedt.buf 1 create or replace procedure testPrl 2 as 3 cursor mycur is select * from emp; 4 var_emp emp%rowtype; 5 begin 6 dbms_output.put_line('EMPNO '||' ENAME '||' SAL '); 7 dbms_output.put_line('----------'||' ----------'||' -------'); 8 open mycur; 9 loop 10 fetch mycur into var_emp; 11 exit when mycur%notfound; 12 dbms_output.put_line(rpad(var_emp.empno,12,' ')|| 13 rpad(var_emp.ename,12,' ')||rpad(var_emp.sal,7,' ')); 14 end loop; 15 close mycur; 16 exception 17 when no_data_found then 18 dbms_output.put_line('NO DATA'); 19 when others then 20 dbms_output.put_line('EXCEPTION'); 21* end; SQL> /过程已创建。SQL> exec testPrl; EMPNO ENAME SAL ---------- ---------- ------- 7369 SMITH 800 7499 ALLEN 1600 7521 WARD 1250 7566 JONES 2975 7654 MARTIN 1250 7698 BLAKE 2850 7782 CLARK 2450 7788 SCOTT 3000 7839 KING 5000 7844 TURNER 1500 7876 ADAMS 1100 7900 JAMES 950 7902 FORD 3000 7934 MILLER 1300PL/SQL 过程已成功完成。
其实不想输出到文件里 是因为我得让客户建directory 我现在连到客户的数据库服务器上生成的文件都在服务器端那边,,,现在就像不要让客户去取这些生成的数据
SQL> ed
已写入 file afiedt.buf 1 create or replace procedure testPrl
2 as
3 cursor mycur is select * from emp;
4 var_emp emp%rowtype;
5 begin
6 dbms_output.put_line('EMPNO '||' ENAME '||' SAL ');
7 dbms_output.put_line('----------'||' ----------'||' -------');
8 open mycur;
9 loop
10 fetch mycur into var_emp;
11 exit when mycur%notfound;
12 dbms_output.put_line(rpad(var_emp.empno,12,' ')||
13 rpad(var_emp.ename,12,' ')||rpad(var_emp.sal,7,' '));
14 end loop;
15 close mycur;
16 exception
17 when no_data_found then
18 dbms_output.put_line('NO DATA');
19 when others then
20 dbms_output.put_line('EXCEPTION');
21* end;
SQL> /过程已创建。SQL> exec testPrl;
EMPNO ENAME SAL
---------- ---------- -------
7369 SMITH 800
7499 ALLEN 1600
7521 WARD 1250
7566 JONES 2975
7654 MARTIN 1250
7698 BLAKE 2850
7782 CLARK 2450
7788 SCOTT 3000
7839 KING 5000
7844 TURNER 1500
7876 ADAMS 1100
7900 JAMES 950
7902 FORD 3000
7934 MILLER 1300PL/SQL 过程已成功完成。