本文由黑壳网原创
本文章来源数据库存储过程(简单入门)~黑壳网
壳叔搞笑段子~
一个人坐上出租汽车,当接近自己家时,发现身上已分文不剩。“在这里停下,”他喊道,“我到路旁的小卖店买包香烟就回来。我有 10 英镑掉在车上了,因为车内太暗,一时找不到,先借我一点零钱买烟吧。”他接过钱快步进了小卖店,回头一看,就像他预想的那样,出租车飞快地开跑了。
我先简答科普一下存储过程。
存储过程相当于数据库中的子程序。
简单讲几句了解一下存储过程的好处,例如做一个功能,如果你在前台处理处理的话,可能会和数据库涉及多次交流,但是如果你用存储过程的话,就只有一次。从相应时间上来说,涉及一次肯定比涉及多次的有优势。也就是说在开发过程当中存储过程有可以提高运行效率的好处。另外,程序容易出现 bug 不稳定,而存储过程,只要数据库不出现问题,基本上是不会出现什么问题的,从另一个角度来说,或者从安全的角度来说使用了存储过程的系统更加稳定。
i. 存储过程与存储函数的概念
在数据库中,有很多的对象,这些对象包含了(表、视图、索引、序列、同义词)和(存储过程、存储函数)
是指在数据库中供所有用户程序调用的子程序,叫存储过程和存储函数
存储过程和存储函数的相同点:完成指定的功能程序
存储过程和存储函数的区别:是否用 return 语句返回值
存储过程不能通过 return 返回一个函数的值,这一点是存储过程和存储函数最大的区别。初此之外,我们完全可以当存储过程和存储函数是一样的。
ii. 存储过程的创建
用 CREATE PROCEDURE 命令建立存储过程和存储函数
语法
注: 存储过程只能创建和替换,不可以修改!!! 存储函数同样 我创建一个存储过程示例 存储过程编译完成之后,会生成一个新的名为bhusk的存储过程CREATE [OR REPLACE] PROCEDURE 存储过程名(参数列表)
-- sql 语句通知 oracle 数据库创建 (存储过程名) 的存储过程 ,如果有就覆盖它 ,REPLACE 表示是否覆盖。
AS --说明部分,即使没有说明也不可以省略 AS
PLSQL --子程序体;
点击运行
打印输出,还有一种调用存储过程的方式,适合比较要逼格的同学首先打开以下界面
输入 sqlplus 进入输入 oracle 用户密码控制台界面
确认 用户名和口令输入无误~ 按下 enter 回车
进入以下界面,说明你已经成功进入 sqlplus 了,如果没有百度科普一下,解决问题
执行 set serveroutput on 命令设置环境变量 serveroutput 为打开状态,从而使得 pl/sql 程序能够在 sqlplus 中输出结果!
调用存储过程有两种命令
1、execute 可以缩写 exce 可以说明是 sqlplus 语句
示例
2、
begin
bhusk();
bhusk();
end;
/
这个可以在命令中可多次执行存储过程。
总结:本次主要是存储的入门,让你知道存储过程创建以及调用。后期会写参数的使用以及,然后慢慢深入的文章。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于