不用工具的话用sql*plus就这样慢慢调试 SQL> create or replace PROCEDURE GET_COURTEAC(v_xyh VARCHAR2,v_kch VARCHAR2, v_cur_courteac OUT T_CU RSOR) 2 IS 3 str_sql VARCHAR2(400); 4 BEGIN 5 str_sql:='SELECT A.KCH,A.KCM,B.KXH,B.BM FROM CODE_KCB A, CODE_BJB B WHERE A.JSH=B.BMH AND A.KKXSH='||v_xyh; 6 str_sql:=str_sql||' AND B.KXH='''||v_kxh||'''' ; 7 OPEN v_cur_courteac FOR str_sql; 8 END GET_COURTEAC; 9 /Warning: Procedure created with compilation errors.SQL> show error Errors for PROCEDURE GET_COURTEAC:LINE/COL ERROR -------- ----------------------------------------------------------------- 0/0 PL/SQL: Compilation unit analysis terminated 1/74 PLS-00201: identifier 'T_CURSOR' must be declared SQL>
SQL> create or replace PROCEDURE GET_COURTEAC(v_xyh VARCHAR2,v_kch VARCHAR2, v_cur_courteac OUT T_CU
RSOR)
2 IS
3 str_sql VARCHAR2(400);
4 BEGIN
5 str_sql:='SELECT A.KCH,A.KCM,B.KXH,B.BM FROM CODE_KCB A, CODE_BJB B WHERE A.JSH=B.BMH AND
A.KKXSH='||v_xyh;
6 str_sql:=str_sql||' AND B.KXH='''||v_kxh||'''' ;
7 OPEN v_cur_courteac FOR str_sql;
8 END GET_COURTEAC;
9 /Warning: Procedure created with compilation errors.SQL> show error
Errors for PROCEDURE GET_COURTEAC:LINE/COL ERROR
-------- -----------------------------------------------------------------
0/0 PL/SQL: Compilation unit analysis terminated
1/74 PLS-00201: identifier 'T_CURSOR' must be declared
SQL>
begin
-- Call the procedure
jxzlpj.get_teac_subjectbykch(v_kch => :v_kch,
v_kxh => :v_kxh,
v_jsh => :v_jsh,
v_cur_teac => :v_cur_teac);
end;
对于这个TEst格式的存储过程,我要怎么声明存储过程中调用的变量的值