fkjj.net
当前位置:首页 >> OrAClE 中 执行存储过程 得到的结果在输出区 ,能... >>

OrAClE 中 执行存储过程 得到的结果在输出区 ,能...

能,用游标 与下面代码类似 CREATE OR REPLACE PROCEDURE SELECTTREE(P_TREE OUT SYS_REFCURSOR) IS BEGIN OPEN P_TREE FOR SELECT LEVEL, EMPNO, ENAME, MGR FROM TREETABLE CONNECT BY PRIOR EMPNO = MGR START WITH MGR IS NULL; END SELECTT...

如果你是使用PL/sql工具,在command 窗口下执行set serveroutput on 然后exec sp; 可以看到了 或者在sqlplus 中执行上面的代码

如果是在oracle ebs中可以执行fnd_file.put_line(fnd_file.output,'String') 和dbms_output.put_line('String')(一次输出不能超过255个字符); 如果是Form,Report可以用text_io 如果使用oracle DB可以使用dbms_output.put_line和utl_file.put_lin...

过程返回记录集: CREATE OR REPLACE PACKAGE pkg_test AS TYPE myrctype IS REF CURSOR; PROCEDURE get (p_id NUMBER, p_rc OUT myrctype); END pkg_test; / CREATE OR REPLACE PACKAGE BODY pkg_test AS PROCEDURE get (p_id NUMBER, p_rc OUT...

SQL> create or replace procedure sp_pro10 2 (spno in number,spname out varchar2) is 3 begin 4 select 'ename' into spname from dual; 5 end; 6 / 过程已创建。 SQL> set serveroutput on SQL> DECLARE 2 spno number; 3 spname varchar2(...

可用DBMS_OUTPUT.PUT_LINE()对存储过程的内容进行输出。 如:一个简单的存储过程如下 declare cursor c_job is select empno,ename,job,sal from emp where job='MANAGER'; c_row c_job%rowtype;begin for c_row in c_job loop dbms_output.put_...

下面的例子代码, 仅仅用于演示 in out , 没有任何数据库检索的处理。 注:Oracle 的 IN OUT 写在变量名后面。SQL> CREATE OR REPLACE PROCEDURE HelloWorld2 ( 2 p_user_name IN VARCHAR2, 3 p_out_val OUT VARCHAR2, 4 p_inout_val IN OUT VA...

可以在过程中打印执行结果 dbms_output.put_line('你要输出的内容'); 另外,这里面如果是sql语句或者变量的话,不用加引号

CREATE OR REPLACE PROCEDURE sap_po_test(id IN NUMBER, p_message OUT VARCHAR2) AS mycount number(4) := 0; BEGIN SELECT COUNT(*) INTO mycount FROM 表 WHERE id = p_id; IF mycount > 0 THEN p_message := 'S'; ELSE p_message := 'E'; E...

也是习惯了SQL Server的存储过程中直接可以使用select语句输出结果集,但这个在Oracle中就行不通了。 如果你仅仅是想看到存储过程中语句所影响的记录内容,那么可以考虑使用游标,然后循环游标用dbms_output将内容输出,从而可以在dbms的输出中...

网站首页 | 网站地图
All rights reserved Powered by www.fkjj.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com