斷點

          每天進步一點點!
          posts - 174, comments - 56, trackbacks - 0, articles - 21

          procedure存儲過程

          Posted on 2010-07-24 16:17 斷點 閱讀(269) 評論(0)  編輯  收藏 所屬分類: Oracle DBA

          --創建存儲過程:
          create or replace procedure p
          is
            cursor c is
            select * from emp2 for update;
          begin
            for v_temp in c loop 
              if(v_temp.deptno = 10) then
                update emp2 set sal = sal+10 where current of c;
              elsif(v_temp.deptno = 20) then
                update emp2 set sal = sal+20 where current of c;
              else
                 update emp2 set sal = sal+50 where current of c;
              end if;
            end loop;
            commit;
          end;

          --執行:
          exec p;

          begin
          p;
          end;


          --帶參數的存儲過程,in傳入參數,默認為傳入,out傳出。
          create or replace procedure p
             (v_a in number,v_b number,v_ret out number,v_temp in out number)
          is
          begin
            if(v_a >v_b) then
              v_ret := v_a;
            else
              v_ret := v_b;
            end if;
            v_temp :=v_temp +1;
          end;

          declare
            v_a number := 3;
            v_b number := 4;
            v_ret number;
            v_temp number := 5;
          begin
            p(v_a,v_b,v_ret,v_temp);
            dbms_output.put_line(v_ret);
            dbms_output.put_line(v_temp);
          end;

          主站蜘蛛池模板: 木里| 理塘县| 新龙县| 张北县| 五原县| 定边县| 安新县| 淮南市| 漯河市| 万盛区| 长顺县| 山东| 汉阴县| 花莲县| 南皮县| 盐山县| 莎车县| 中江县| 石狮市| 广灵县| 南华县| 修水县| 阿拉尔市| 富平县| 扶沟县| 桑日县| 句容市| 弥渡县| 苏尼特右旗| 新兴县| 台南县| 辽宁省| 芦溪县| 上思县| 景泰县| 本溪| 普兰店市| 九江县| 无棣县| 上虞市| 锦州市|