1你的存储过程没有返回值,如果通过ODBC来处理的话肯定取不到值!
2 如果你通过OCI来取值的话,应该是没有问题!

解决方案 »

  1.   

    to hushuangyang(hushuangyang):
     那我该如何写呢?OCI我不懂,请帮帮我,谢谢。
      

  2.   

    to beckhambobo:
    请教beckhambobo,我怎么写?能给个sample吗?
      

  3.   

    CREATE OR REPLACE PACKAGE pkg_test
    AS
       TYPE myrctype IS REF CURSOR;   PROCEDURE USP_TITLEGETALL(p_rc OUT myrctype);
    END pkg_test;
    /CREATE OR REPLACE PACKAGE BODY pkg_test
    AS
    PROCEDURE USP_TITLEGETALL(p_rc myrctype) IS
    begin
    --cursor title_cur is select * from TITLE;
    title_rows TITLE %rowtype;
    str varchar2(50);
    begin
    str:='select * from TITLE';
    open p_rc for str;
    end USP_TITLEGETALL;
    end pkg_test;
    /
      

  4.   

    sorry,修改如下:........
    PROCEDURE USP_TITLEGETALL(p_rc out myrctype) IS
    begin
    str varchar2(50);
    begin
    ......
      

  5.   

    to beckhambobo:
    为什么这个在程序包体里是Invaild,
    CREATE OR REPLACE PACKAGE BODY pkg_test
    AS
    PROCEDURE USP_TITLEGETALL(p_rc out myrctype) IS
    begin
    str varchar2(50);
    begin
    str:='select * from TITLE';
    open p_rc for str;
    end USP_TITLEGETALL;
    end pkg_test;