oracle資料庫的隨堂筆記(二)-塊

來源:互聯網
上載者:User

標籤:io   ar   sp   java   on   資料   bs   amp   as   

1.單行注釋--多行注釋/*...*/


2.標誌符號的命名規範
  1)當定義變數時,建議用v_作為首碼 v_sal
  2)當定義常量時,建議用c_作為首碼 c_rate
  3)當定義遊標時,建議用_cursor作為尾碼 emp_cursor
  4)當定義例外時,建議用e_作為首碼 e_error


3.塊結構
  pl/sql塊由三個部分構成:定義部分、執行部分、例外處理部分
  如下所示:
    declear--可選
    /*定義部分----定義常量、變數、遊標、例外、複雜資料類型*/
    begin--必須
    /*執行部分----要執行的pl/sql語句和sql語句*/
    exception--可選
    /*例外處理部分----處理啟動並執行各種錯誤*/
    end;


4.定義並執行一個過程
    create procedure xf_pro1 is
    begin
    insert into mytest(name,passwd) values(‘xiaofei‘,‘1234‘);
    end;
    --查看錯誤資訊
    show error;


5.如何調用該過程
    exec 過程名;
    exec 過程名(參數1,參數2,...);
    call 過程名(參數1,參數2,...);
    例: execute xf_pro1;
          exec xf_pro1;

6.java程式結果
  public static void main(String[] args){
  int a=1;//定義
    try{
      a++;//執行
    }catch(Exception e){}//異常處理
  }

7.執行個體:
  執行個體1.只包括執行部分的pl/sql塊
    set serveroutput on--開啟輸出選項
    set serveroutput off--關閉輸出選項  
    最簡單的塊:
    begin
    dbms_output.put_line(‘hello,world‘);
    end;
    /*
    相關說明:
    dbms_output是oracle所提供的包(類似java的開發包),該包包含一些過程,put_line就是dbms_output包的一個過程
    */
  執行個體2.包含了定義部分和執行部分的pl/sql塊
    declare
    v_ename varchar2(5);
    begin
    select ename into v_ename from emp where empno=&no;
    dbms_output.put_line(‘僱員名:‘||v_name);
    end;
    /
    /*
    相關說明:
    --地址符是從控制台輸入
    --into v_name表示將查出資訊放入到變數v_name中(即賦值)
    --||表示串連符
    */

    declare
    --定義變數
    v_name varchar2(5);
    begin
    --執行部分
    select ename into v_ename from emp where empno=&aa;
    --在控制台顯示使用者名稱
    dbms_output.put_line(‘使用者名稱:‘||v_ename);
    end;
    /

    把使用者名稱和薪水顯示出來
    v_ename varchar2(5);
    v_sal number(7,2);
    begin
    select ename,sal into v_ename,v_sal from emp where empno=&empno;
    --注意變數名要一一對應
    dbms_output.put_line(‘僱員名:‘||v_ename||‘工資:‘||v_sal);
    end;
    /

  執行個體3.包含定義部分、執行部分和例外處理部分
    為了避免pl/sql程式的運行錯誤,提高pl/sql健壯性,應該對可能的錯誤進行處理
      1)比如在執行個體2中,如果輸入了不存在的僱員號,應當做例外處理
      2)有時出現異常,希望用例外的邏輯處理
    相關說明:oracle事先預定義了一些例外,no_data_found就是找不到資料的例外

    declare
    v_ename varchar2(5);
    v_sal number(7,2);
    begin
    select ename,sal into v_ename,v_sal from emp wherer empno=&aa;
    dbms_output.put_line(‘使用者名稱是:‘||v_ename||‘工資:‘||v_sal);
    --異常處理
    exception
    when no_data_found then
    dbms_output.put_line(‘朋友,您輸入的編號有誤‘);
    end;
    /

oracle資料庫的隨堂筆記(二)-塊

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.