declare s integer;sg number;
begin
  s:= ppf_queryarrearage('5202008730',sg); //调用一个函数
  select * from dlyx.tmp_df;
end;当我执行到 select * from dlyx.tmp_df 的时候报错
ORA-06550:“在此SELECT语句中缺少INTO语句”
去掉这个查询就可以,这是为什么?

解决方案 »

  1.   

    语法不对,必须 用select  into  from table
      

  2.   

    如果后面的tmp_df是列名的话,去掉,光写表明
      

  3.   

    我只是想查看一下tmp_df表,因为执行完上面的函数后这个表就有数据了。
    我想大概是在批处理中不能用这个语法。
      

  4.   

    declare 
    s integer;
    sg number;
    tmp dlyx.tmp_df%rowtype;
    begin
      s:= ppf_queryarrearage('5202008730',sg); //调用一个函数
      select * into tmp from dlyx.tmp_df;
    end; 
    这样不就行了?不管你的目的是只想查看一下tmp_df表还是怎么。
      

  5.   

    就是语法不对,举个简单的例子:(创建一个显示雇员总人数的存储过程)
    create or replace procedure emp_count
     as
       v_total number;
     begin
       select count(*) into v_total from emp;                  
       dbms_output.put_line('雇员的总人数为:'||v_total);
     end;
    调用存储过程:
    execute emp_count;
      

  6.   


    declare 
    s integer;
    sg number; 
    test number; 
    begin 
      s:= ppf_queryarrearage('5202008730',sg); //调用一个函数 
      select dlyx.tmp_df.id into test from dlyx.tmp_df; 
    end;