想实现SQLServer语句中的
Declare @Param1 Varchar(50)
Set @Param1 = 'MyParam'Select * From TableXXX Where Field1 = @Param用PL/SQL正确的语句如何写,请各位指教。 
(初次使用Oracle,请勿见笑) 

解决方案 »

  1.   

    SQL> select * from test;       AAA BBB
    ---------- ----------
             1 a
             2 b
             3 cSQL> declare
      2  Param1 varchar2(5):='a';
      3  var test%rowtype;
      4  begin
      5  Select * into var
      6  From TEST
      7  Where bbb = Param1 ;
      8  dbms_output.put_line(var.aaa);
      9  end;
     10  /1PL/SQL 过程已成功完成。SQL> 
      

  2.   

    恩,可以查询出来了,但我还有两个疑问。
    1.如何在Grid中查询Select出来的数据?
    2.如果返回值为多行就提示出错~~
    Error report:
    ORA-01422: exact fetch returns more than requested number of rows继续请教。
      

  3.   

    肯定是你的sql语句的毛病你这个返回了多条查询记录 你distance一下试试看
      

  4.   


    已写入文件 afiedt.buf  1  declare
      2     cursor c
      3             is select * from test;
      4  begin
      5     for v_c in c loop
      6      dbms_output.put_line(v_c.aaa);
      7     end loop;
      8* end;
    SQL> /PL/SQL 过程已成功完成。