求一个存储过程的写法(读取值并返回)
假如有一张Student表: 
 ID            (Number) 
 Name      (Varchar2)   
 写一个存储过程,以ID为参数,读取Name的值并返回 
 谢谢~~
------解决方案--------------------我的异常网推荐解决方案:oracle存储过程,http://www.aiyiweb.com/oracle-develop/177537.html
------解决方案--------------------create or replace procedure pro_stu(v_id number) as 
 declare 
   v_name varchar2(20); 
 begin 
   select name into v_name from student where id=v_id; 
   dbms_output.put_line(v_name); 
 end;
------解决方案--------------------oracle 存储过程的基本语法   
 1.基本结构 
 CREATE OR REPLACE PROCEDURE 存储过程名字 
 ( 
     参数1 IN NUMBER, 
     参数2 IN NUMBER 
 ) IS 
 变量1 INTEGER :=0; 
 变量2 DATE; 
 BEGIN   
 END 存储过程名字   
 2.SELECT INTO STATEMENT 
   将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条 
   记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND) 
   例子: 
   BEGIN 
   SELECT col1,col2 into 变量1,变量2 FROM typestruct where xxx; 
   EXCEPTION 
   WHEN NO_DATA_FOUND THEN 
       xxxx; 
   END; 
   ...   
 3.IF 判断 
   IF V_TEST=1 THEN 
     BEGIN 
        do something 
     END; 
   END IF;   
 4.while 循环 
   WHILE V_TEST=1 LOOP 
   BEGIN 
  XXXX 
   END; 
   END LOOP;   
 5.变量赋值 
   V_TEST := 123;   
 6.用for in 使用cursor 
   ... 
   IS 
   CURSOR cur IS SELECT * FROM xxx; 
   BEGIN 
  FOR cur_result in cur LOOP 
   BEGIN 
    V_SUM :=cur_result.列名1+cur_result.列名2 
   END; 
  END LOOP; 
   END;   
 7.带参数的cursor 
   CURSOR C_USER(C_ID NUMBER) IS SELECT NAME FROM USER WHERE TYPEID=C_ID; 
   OPEN C_USER(变量值); 
   LOOP 
  FETCH C_USER INTO V_NAME; 
  EXIT FETCH C_USER%NOTFOUND; 
     do something 
   END LOOP; 
   CLOSE C_USER;   
 8.用pl/sql developer debug 
   连接数据库后建立一个Test WINDOW 
   在窗口输入调用SP的代码,F9开始debug,CTRL+N单步调试