我的理解 比较简单(仅供参考)   存储过程就相当于java里面的方法 简单讲就是一串代码能够实现某个特定的功能,想要使用这个方法直接调用方法名就能够使用他的功能,这就是方法

oracle 存储过程也相当于是写方法来调用  用图片的形式来解释  通俗易懂   有中文解释

1.无参存储过程     or replace一般不要写 仅供学习的时候写上 工作不要写

2.带参存储过程  多个参数用逗号隔开

3.定义变量以及赋值

4.打印语句

5.简单的操作

写一存储过程,打印1-n   n是传入的参数 要用到循环

--创建一个存储过程    for 循环
CREATE OR replace PROCEDURE xunhuan(n NUMBER) AS
BEGIN
FOR a IN 1..n
LOOP
dbms_output.put_line(a);
END LOOP;
END;

--sql语句
DECLARE
n NUMBER:=15;
BEGIN
xunhuan(n);
END;

-- while 循环
CREATE PROCEDURE zzzz(n NUMBER)
AS
a NUMBER:=1;
BEGIN
WHILE a<=n
LOOP
dbms_output.put_line(a);
a:=a+1;
END LOOP;
END;

DECLARE
cc NUMBER:=15;
BEGIN
zzzz(cc);
END;

--结果

6.稍微难一点的

--写一存储过程,求m-n的累加和并返回
jiashu和jiash后面的in是入参的意思 就是写入参数,out是返回值(装返回内容的)
CREATE OR REPLACE PROCEDURE fangfa1
(
jiashu IN NUMBER ,
jiash IN NUMBER ,
he OUT NUMBER--返回结果
)
AS
v_sum NUMBER:=0;--装结果
BEGIN
FOR j IN jiashu..jiash
LOOP
v_sum:=v_sum+j;
END LOOP;
he:=v_sum;
END;

--调用
DECLARE
qq number:=1;
ww NUMBER:=100;
he number;--用来接收返回值的
BEGIN
fangfa1(qq,ww,he);
dbms_output.put_line(he);
end;

--简单的分享到这

oracle 存储过程(分析理解)的更多相关文章

  1. Oracle存储过程的理解

    在大专时候学的专业是数据库管理专业,在学校学了各种各样的数据 MSSQL.ORACLE.MySQL. 那时候学数据大部分只学到了些皮毛,仅仅只会按照书上SQL语句,输入计算机得出结果,就很有成就感. ...

  2. 转:用java调用oracle存储过程总结(比较好理解)

    这段时间开始学习写存储过程,主要原因还是因为工作需要吧,本来以为很简单的,但几经挫折,豪气消磨殆尽,但总算搞通了,为了避免后来者少走弯路,特记述与此,同时亦对自己进行鼓励. 一:无返回值的存储过程 存 ...

  3. Oracle 存储过程_(收集)

    oracle 存储过程的基本语法 1.基本结构 CREATE OR REPLACE PROCEDURE 存储过程名字(    参数1 IN NUMBER,    参数2 IN NUMBER) IS变量 ...

  4. Oracle存储过程单步调试方法

    oracle存储过程单步调试的方法 1.在要调试的过程上单击test,如下图所示: 2.出现如下界面时单击最左上方的按钮:,如下图所示: 3.单击后呈现如下画面: 其中: 表示要停止test; 表示要 ...

  5. Oracle存储过程中异步调用的实际操作步骤

    本文标签:Oracle存储过程 我们都知道在Oracle数据库的实际应用的过程中,我们经常把相关的业务处理逻辑,放在Oracle存储过程中,客户端以通过ADO来进行相关的调用  .而有些相关的业务逻辑 ...

  6. 用java调用oracle存储过程总结(转)

    //1.call+包名+存储过程名(传入.传出值用?) String str="{call SMSBUSINESS.deleteZhZMember(?,?,?)}"; //2.建立 ...

  7. 如何在pl/sql developer 7运行到oracle存储过程设置断点的地方

    如何高效调试oracle存储过程,尤其是父子网状调用的存储过程 1,在需要设置断点的oracle存储过程处设置断点         如何设置断点:直接在某行oracle存储过程处单击行首,会在行首显示 ...

  8. 用java调用oracle存储过程总结

    以前一直没有动存储过程是用来干嘛的,后来请教朋友才换为自己的理解方式,用自己通俗的语言来说,就是把sql语句换为一个过程,也可以说是一个方法,每次直接给参数调用就好,使用存储过程查询速度快,系统只编译 ...

  9. Oracle漏洞分析(tns_auth_sesskey)

    p216 Oracle漏洞分析: 开启oracle: C:\oracle\product\\db_1\BIN\sqlplus.exe /nolog conn sys/mima1234 as sysdb ...

随机推荐

  1. C++ MFC万能的类向导

    MFC的类向导 只要你掌握了类向导,你基本就已经掌握了MFC了,毕竟布局和代码都是自动生成,再加上C++基础上手还是挺快的,剩下的就是多多练习了. 转自: https://blog.csdn.net/ ...

  2. cygwin 安装 apt-cyg

    apt-cyg apt-cyg is a Cygwin package manager. It includes a command-line installer for Cygwin which c ...

  3. Ajax请求二进制流并在页面展示

    后端代码: public void getIntegralQrcode(HttpServletResponse response, String token) throws BizException, ...

  4. 执行curl 提示curl: (35) SSL connect error

    安装acme证书时,执行如下 curl https://get.acme.sh | sh 提示如下报错: curl: (35) SSL connect error curl -v 跟踪时 发现 NSS ...

  5. Vue学习4:class与style绑定

    说明:有些部分我只是相当于做一个学习笔记,加强记忆之用.所以可能阅读性不是那么强.如果有参考我这类博客的人,那么请见谅. 代码如下: <!DOCTYPE html> <html la ...

  6. python locust 性能测试:HttpSession

    官网解释:用于在请求之间执行Web请求和保留(会话)cookie的类(以便能够登录和退出网站):记录每个请求,以便locust可以显示统计信息: from locust import TaskSet, ...

  7. centos7多网卡配置bond0 (mode6无需交换机做配置)

    1.执行setup命令-->网络配置-->本例中四块网卡. 2.ifconfig列出四块网卡. 3.我们的目标,绑定eth0和eth1两块网卡作为公网网卡,ip设置为192.168.0.5 ...

  8. java线程学习之wait方法

    wait 等待方法是让线程进入等待队列,使用方法是 obj.wait(); 这样当前线程就会暂停运行,并且进入obj的等待队列中,称作“线程正在obj上等待”. 如果线程想执行 wait 方法,线程必 ...

  9. 在java中使用ssm框架的定时的实现

    1.首先需要在application.xml里面配置如下的代码: xmlns:task="http://www.springframework.org/schema/task http:// ...

  10. 在linux上安装python, jupyter, 虚拟环境(virtualenv)以及 虚拟环境管理之virtualenvwraper

    一, 安装python31.下载python3源码 wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz2.解压缩源码包,去 ...