码迷,mamicode.com
首页 > 其他好文 > 详细

存储过程

时间:2016-12-05 20:14:02      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:var   creat   date   section   user   存储   ble   strong   cut   

CREATE [OR REPLACE] PROCEDURE procedure_name
    [ (parameter [,parameter]) ]

IS
    [declaration_section]

BEGIN
    executable_section

[EXCEPTION
    exception_section]

END [procedure_name];

先初始化数据。

create table students
( 
  ID int,
  userName varchar(100),
  userPass varchar(100),
  userAge  int
)
begin
insert into students values(1,‘jack‘,‘jjjaa‘,23);
insert into students values(2,‘rose‘,‘jjjaa‘,21);
insert into students values(3,‘lucy‘,‘jjjaa‘,22);
insert into students values(4,‘Tony‘,‘jjjaa‘,24);
end; commit;

新建一个存储过程,对于某个用户添加年龄

create or replace procedure  SP_Update_Age
(
 uName in varchar,--note,here don‘t have length ,sql have lenth ,not in oracle.
 Age in int
)
as
begin
    update students set UserAge = UserAge + Age where userName = uName;
    commit;
end SP_Update_Age;  

执行存储过程

call SP_UPDATE_AGE(‘jack‘,1);  

call和exec的区别:

1. 但是exec是sqlplus命令,只能在sqlplus中使用;call为SQL命令,没有限制.

2. 存储过程没有参数时,exec可以直接跟过程名(可以省略()),但call则必须带上().

 

存储过程

标签:var   creat   date   section   user   存储   ble   strong   cut   

原文地址:http://www.cnblogs.com/bulrush/p/6134992.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!