最近刚自学Oracle函数和存储过程,在网上下了几个例子。
create or replace function get_hello_msg return varchar2 as
begin
  return 'hello world';
end get_hello_msg; --创建函数set serverout on; declare msg varchar2(20);
begin
msg := get_hello_msg; dbms_output.put_line(msg);
end; ---查看函数的返回值
请问一下我在PL/SQL客户端怎样查看函数的返回值,说的越详细越好

解决方案 »

  1.   

    直接运行,PL/SQL,不行嘛?execute get_hello_msg;
      

  2.   

    1、鼠标选择在存储过程上,点右键选择 test
    2、在新开的窗口下面,输入参数值,如果没有参数可以不输入
    3、选择最上面 左面的小齿轮按钮 执行
    4、如果程序正确,在第二步新开窗口的 第二个 选项页面中[叫output] 就能看到输出值了。
      

  3.   

    你在pl/sql里SQL窗口运行的么?
    这个sql窗口有三个TAB页,分别是:SQL Output Statistics
    运行完了之后,你点开第二个TAB页,看Output就行了。
      

  4.   

    不行,提示:ORA-00900:无效SQL语句
      

  5.   

    执行:select object_name, object_type, status from user_objects where lower(object_name) = 'get_hello_msg'; --在数据字典中查看函数的信息
     结果为:
    OBJECT_NAME    OBJECT_TYPE    STATUS
    GET_HELLO_MSG   FUNCTION       INVALID
    为什么状态。是无效的。
      

  6.   

    是在pl/sql里SQL窗口运行,也看到了三个选项框。。主要执行提示无效SQL
      

  7.   

    --存储过程在SQL窗口调用例子
    BEGIN
    PKG_ATT.SP_Attendance;
    END;
      

  8.   

    --函数在SQL窗口调用例子
    select pkg_att.Fn_Get_EmpName(t.Emp_No) from t_employee;--你的函数,试一下这个
    select get_hello_msg from dual;
      

  9.   

    --函数在SQL窗口调用例子
    select pkg_att.Fn_Get_EmpName(t.Emp_No) from t_employee t;--你的函数,试一下这个
    select get_hello_msg from dual;