1 create or replace
 2 procedure lbm_pro2
 3 (str1 in varchar2) as
 4 str2 varchar2(50);
 5 begin
 6   select 机身号 into str2 from 基本库 where 机身号=str1;
 7 end lbm_pro2;
 8 
 9 /*
10 如果你要取返回值,必须定义游标,如果用游标返回取到的值,必须定义包,在包里写存储过程。
11 你也可以用楼上的方法把数据写进另一张表,不过要记得每次调用时还把表删掉。
12 create or replace procedure sp_get_users_byId(param1 in varchar2) 
13 is
14 s varchar2(2000);
15 begin
16 s:='drop table ls_table';
17 execute immediate s;
18 s:='create table ls_table as (
19   select * from scott.tbUsers where userId=param1)';
20 execute immediate s;
21 end sp_get_users_byId;
22 
23 这是创建存储过程的模板:
24 存储过程模板:
25 CREATE [OR REPLACE] PROCEDURE 
26 [schema.]procedure_name[(argument [in|out|inout] type…)]
27 IS | AS
28 [本地变量声明]
29 BEGIN
30    执行语句部分
31 [EXCEPTION]
32    错误处理部分
33 END[procedure_name];*/