zoukankan      html  css  js  c++  java
  • oracle 存储过程(分析理解)

    我的理解 比较简单(仅供参考)   存储过程就相当于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;

    --简单的分享到这

  • 相关阅读:
    DailyRollingFileAppender的使用
    CSS自动换行
    MAC与WIN10电脑共享文件
    C++常用STL
    Python机器学习及实践 课后小题
    Mac上利用VScode配置c/c++开发环境
    pycharm+anaconda在Mac上的配置方法 2019.11.29
    二分查找 python实现
    python3相关
    算法图解 各部分回忆
  • 原文地址:https://www.cnblogs.com/lqh-haodi/p/10453637.html
Copyright © 2011-2022 走看看