declare 
v_1 number(7,2);
begin
 select deptno into v_1 from test_s
 
 dbms_OUTPUT.put_line('aa'||v_1);
 end ;请问这样写有问题吗?报错喔`~``

解决方案 »

  1.   

    declare 
    v_1 number(7,2); 
    begin 
    select deptno into v_1 from test_s where...;
    dbms_output.put_line('aa'||v_1); 
    end ; 
      

  2.   

    declare 
      v_1 number(7,2); 
    begin 
      select deptno into v_1 from test_s where rownum<2; 
      dbms_output.put_line('aa'||v_1); 
    end ; 
      

  3.   

    select deptno into v_1 from test_s 可能返回多个记录了,这里是能返回一条记录。
      

  4.   

    select deptno into v_1 from test_s 返回N个记录而且后面没有;。
      

  5.   

    declare 
    v_1 number(7,2); 
    begin 
    select deptno into v_1 from test_s ;没有分号 如果是多条记录,则用游标dbms_OUTPUT.put_line('aa'||v_1); 
    end ; 
      

  6.   

    --如果有多条记录set serveroutput ondeclare begin
    for cur in (select id ,'bb' as name from t1)
    loop 
    dbms_output.put_line(cur.id||cur.name);
    end loop;
    end;
    /
      

  7.   

    缺少条件,还有就是你的deptno是否也是number类型的
      

  8.   

    set serveroutput ondeclare begin
    for cur in (select id ,'bb' as name from t1)
    loop 
    dbms_output.put_line(cur.id||cur.name);
    end loop;
    end;