只是想写一个存储过程来实现这样一句SQL查询:
select * from user_tt where t_age>35;看我写的(别笑我哈,刚接触ORACLE)
create or replace procedure test_pro 
is
begin
  select * from user_tt where t_age>35;
end;通不过,不知错在哪里帮帮忙吧~~~~

解决方案 »

  1.   

    oracl存储过程 查询和sqlserver 是不一样的,只能用游标
      

  2.   


    create or replace procedure test_pro  
    is
    sqlstr varchar2(1000);
    begin
      sqlstr := 'select * from user_tt where t_age>35';
      execute immediate(sqlstr); 
    end;
      

  3.   

    oracle 在pl/sql语句块中,也就是如begin..end 之类的语句中,使用select 语句必须与into一起使用才有意义。不然它检索出来的结果不知道放到哪里去。如楼上的,使用动态sql也行,只不过查询语句用动态sql,根本看不到数据的。
      

  4.   

    CREATE OR REPLACE PROCEDURE 存储过程名字 

        参数1 IN NUMBER, 
        参数2 IN NUMBER 
    ) IS 
    变量1 INTEGER :=0; 
    变量2 DATE; 
    BEGIN 
       XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    END 存储过程名字;好好看看吧,是你end后面没有跟    存储过程名字   ,其他的都是浮云。
      

  5.   

    不知道二楼的能否执行,如果是在存储过程中使用查询都是select into 一起使用的,select into就是将查询到的值赋给一个变量,如CREATE OR REPLACE RROCEDURE PROC_SELECT 
    IS
    S_ID INTEGER;
    BEGIN
    SELECT T.ID INTO S_ID FROM user_tt T where t_age>35;
    END;
      

  6.   

    CREATE OR REPLACE PROCEDURE 存储过程名字  
    (  
      参数1 IN NUMBER,  
      参数2 IN NUMBER  
    ) IS  
    变量1 INTEGER :=0;  
    变量2 DATE;  
    BEGIN  
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    END 存储过程名字;好好看看吧,是你end后面没有跟 存储过程名字 ,其他的都是浮云。