初学pl/sql,这段代码弄了半天都编译不过,大家帮忙看看是什么问题吧。
wfan是一个方案,其中有两个表student和teacherCREATE OR REPLACE  PROCEDURE showinfo
astype stu is record
(
   student_id varchar2(20) := '1';       -- 学生id 
   student_name varchar2(20) := 'abc';   -- 学生姓名
);v_a stu;
 
begin
  select wfan.student.student_id, wfan.student.student_name into v_a
  from wfan.student join wfan.teacher
  on wfan.student.teacher_id = wfan.teacher.teacher_id;
end;

解决方案 »

  1.   

    CREATE OR REPLACE PROCEDURE showinfo
    astype stu is record
    (
      student_id varchar2(20) := '1',     -- Ñ§Éúid
      student_name varchar2(20) := 'abc'  -- Ñ§ÉúÐÕÃû
    );v_a stu;begin
      select wfan.student.student_id, wfan.student.student_name into v_a
      from wfan.student join wfan.teacher
      on wfan.student.teacher_id = wfan.teacher.teacher_id;
    end;
      

  2.   

    type里面,不能;
    和你建表时语句差不多。
    ,隔开。
      

  3.   

    CREATE OR REPLACE  PROCEDURE showinfo 
    as type stu is record 

      student_id varchar2(20),      -- 学生id 
      student_name varchar2(20)  -- 学生姓名 
    ); 
    type stu_tmp is table of stu index by binary_integer;
    v_a stu_tmp; begin 
      select wfan.student.student_id, wfan.student.student_name bulk collect into v_a 
      from wfan.student join wfan.teacher 
      on wfan.student.teacher_id = wfan.teacher.teacher_id; 
    end;这样应该就没有错误了。但是这个过程没有将取得的结果集输出,看不到任何结果