首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

啊PLS-00428: 在此 SELECT 语句中缺少 INTO 子句

2013-01-17 
求救啊!!!PLS-00428: 在此 SELECT 语句中缺少 INTO 子句declaretotalcourgrade realbegintotalcourgrade

求救啊!!!PLS-00428: 在此 SELECT 语句中缺少 INTO 子句
declare
totalcourgrade real;
begin

totalcourgrade := GetCourseGrade('S07080101');

select tb_grade.stuid 学号,stuname 姓名,sum(coursegrade) 已获学分 from tb_grade,tb_student where tb_student.stuid = tb_grade.stuid
group by tb_grade.stuid,stuname;

dbms_output.put_line(totalcourgrade);
end;



出现以下错误:
select tb_grade.stuid 学号,stuname 姓名,sum(coursegrade) 已获学分 from tb_grade,tb_student where tb_student.stuid = tb_grade.stuid
*

第 7 行出现错误:  
ORA-06550: 第 7 行, 第 1 列:  
PLS-00428: 在此 SELECT 语句中缺少 INTO 子句  

我是想既输出totalcourgrade(总学分),又得到select的查询结果。GetCourseGrade('S07080101')是调用的函数.

请各位大侠帮帮忙啊!急啊!
[解决办法]

DECLARE
  totalcourgrade REAL;
  v_id           VARCHAR2(30);
  v_name         VARCHAR2(30);
  v_score        NUMBER;

BEGIN
  FOR cc IN (SELECT * FROM tb_student) LOOP
    totalcourgrade := GetCourseGrade(cc.stuid);
  
    SELECT tb_grade.stuid, stuname, SUM(coursegrade)
      INTO v_id, v_name, v_score
      FROM tb_grade, tb_student
     WHERE tb_student.stuid = tb_grade.stuid AND
           tb_student.stuid = cc.stuid;
  
    dbms_output.put_line('name:' 
[解决办法]
 v_name 
[解决办法]
 ',id:' 
[解决办法]
 v_id 
[解决办法]
 ',score:' 
[解决办法]
 to_char(v_score) 
[解决办法]

                         ',total:' 
[解决办法]
 to_char(totalcourgrade));
  END LOOP;
END;

[解决办法]
引用:
SQL code
DECLARE
  totalcourgrade REAL;
  v_id           VARCHAR2(30);
  v_name         VARCHAR2(30);
  v_score        NUMBER;

BEGIN
  FOR cc IN (SELECT * FROM tb_student) LOOP
    totalcour……



up
------解决方案--------------------




declare
totalcourgrade real;
v_stuid tb_grade.stuid%type;
v_stuname varchar2(20);
v_num number;
cursor xsjc_cur is select tb_grade.stuid,stuname,sum(coursegrade) as coursegrade from tb_grade,tb_student where tb_student.stuid = tb_grade.stuid
group by tb_grade.stuid,stuname;
begin
totalcourgrade := GetCourseGrade('S07080101');
for xsjc_cur_rec in xsjc_cur loop
v_stuid:=xsjc_cur_rec.stuid;
v_stuname:=xsjc_cur_rec.stuname;
v_num:=xsjc_cur_rec.coursegrade;
dbms_output.put_line('学号:'
[解决办法]
to_char(v_stuid),'姓名:'
[解决办法]
v_stuname,'学分:'to_char(v_num));
end loop;
dbms_output.put_line(totalcourgrade);
end;




[解决办法]
OPEN cur_OUT FOR  
'
SELECT TO_CHAR(TRUNC(TO_DATE(D_TIME,''YYYY-MM-DD HH24:MI:SS''),''MI''),''YYYY-MM-DD HH24:MI:SS'') D_TIME,
  TO_CHAR(AVG(F_COMPONENTCODE),''fm9999999990.00'') F_COMPONENTCODE  
  FROM ' 
[解决办法]
 TABLE_NAME 
[解决办法]
 ' 
  WHERE TO_CHAR(TRUNC(TO_DATE(D_TIME,''YYYY-MM-DD HH24:MI:SS''),''MI''),''YYYY-MM-DD HH24:MI:SS'')  
  BETWEEN ''2010-04-04 02:01'' AND ''2010-04-04 02:06''  
  GROUP BY TO_CHAR(TRUNC(TO_DATE(D_TIME,''YYYY-MM-DD HH24:MI:SS''),''MI''),''YYYY-MM-DD HH24:MI:SS'')  
  ORDER BY TO_CHAR(TRUNC(TO_DATE(D_TIME,''YYYY-MM-DD HH24:MI:SS''),''MI''),''YYYY-MM-DD HH24:MI:SS'')
';

热点排行