我用sqlplus scott/tiger可以连上

解决方案 »

  1.   

    userid不是必须的吧?proc是予编译,它并不管是否连上数据库的(我认为)!
    你用proc iname=cv_demo.pc code=cpp看看是否就可以过了
      

  2.   

    如果不带userid,报错:
    Error at line 78, column 17 in file cv_demo.pc
                    emp_demo_pkg.open_cur(:emp_cursor, :dept_num);
    ................1
    PLS-S-00201, identifier 'EMP_DEMO_PKG.OPEN_CUR' must be declared
    Error at line 78, column 17 in file cv_demo.pc
                    emp_demo_pkg.open_cur(:emp_cursor, :dept_num);
    ................1
    PLS-S-00000, Statement ignored
    Semantic error at line 76, column 4, file cv_demo.pc:
                            declare
    ...1
    PCC-S-02346, PL/SQL found semantic errors
    *** 错误退出代码 1这个程序和makefile都是Oracle的提供的demo程序,
    其他的demo都可以编通,就是通用存储过程的demo编不通。75-80行程序如下:
    75        EXEC SQL EXECUTE
    76            declare
    77            begin
    78                emp_demo_pkg.open_cur(:emp_cursor, :dept_num);
    79            end;
    80        END-EXEC;
      

  3.   

    sqlcheck还有其它选项的。好像是se开头的什么,你可以用proc help=y 或查查文档。
    pc文件包含pl/sql时要求这个选项的。
      

  4.   

    必须用sql check = semantic