日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle 存储过程

發布時間:2025/3/21 编程问答 13 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 存储过程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.創建過程

   與其它的數據庫系統一樣,Oracle的存儲過程是用PL/SQL語言編寫的能完成一定處理功能的存儲在數據庫字典中的程序。

  語法:

  create [or replace] procedure procedure_name

  [ (argment [ { in| in out }] type,

  argment [ { in | out | in out } ] type

  { is | as }

  <類型.變量的說明>

   ( 注: 不用 declare 語句 )

  Begin

  <執行部分>

  exception

  <可選的異常處理說明>

  end;

  l 這里的IN表示向存儲過程傳遞參數,OUT表示從存儲過程返回參數。而IN OUT 表示傳遞參數和返回參數;

  l 在存儲過程內的變量類型只能指定變量類型;不能指定長度;

  l 在AS或IS 后聲明要用到的變量名稱和變量類型及長度;

  l 在AS或IS 后聲明變量不要加declare 語句。

2.使用過程

   存儲過程建立完成后,只要通過授權,用戶就可以在SQLPLUS 、Oracle開發工具或第三方開發工具來調用運行。Oracle 使用EXECUTE 語句來實現對存儲過程的調用。

  語法:

  EXEC[UTE] procedure_name( parameter1, parameter2…);

3.開發過程

   目前的幾大數據庫廠商提供的編寫存儲過程的工具都沒有統一,雖然它們的編寫風格有些相似,但由于沒有標準,所以各家的開發調試過程也不一樣。下面編寫PL/SQL存儲過程、函數、包及觸發器的步驟如下:

  3.1 編輯存儲過程源碼使用文字編輯處理軟件編輯存儲過程源碼,要用類似WORD 文字處理軟件進行編輯時,要將源碼存為文本格式。

  3.2 對存儲過程程序進行解釋在SQLPLUS或用調試工具將 存儲過程程序進行解釋;

  在SQL>下調試,可用start 或get 等Oracle命令來啟動解釋。如:

  SQL>start c:/stat1.sql

  如果使用調試工具,可直接編輯和點擊相應的按鈕即可生成存儲過程。[1]

  3.3 調試源碼直到正確我們不能保證所寫的存儲過程達到一次就正確。所以這里的調試是每個程序員必須進行的工作之一。在SQLPLUS下來調試主要用的方法是:

  1.使用 SHOW ERROR命令來提示源碼的錯誤位置;

  2.使用 USER_ERRORS 數據字典來查看各存儲過程的錯誤位置。

  3.4 授權執行權給相關的用戶或角色如果調試正確的存儲過程沒有進行授權,那就只有建立者本人才可以運行。所以作為應用系統的一部分的存儲過程也必須進行授權才能達到要求。 在SQLPLUS下可以用GRANT命令來進行存儲過程的運行授權。

  語法:

  GRANT system_privilege | role TO user | role | PUBLIC

  [WITH ADMIN OPTION]

  

  GRANT object_privilege | ALL column ON schema.object

  TO user | role | PUBLIC WITH GRANT OPTION

  其中:

  system_privilege: 系統權限

  role: 角色名

  user: 被授權的用戶名

  object_privilege: 所授予的權限名字,可以是

  ALTER

  DELETE

  EXECUTE

  INDEX

  INSERT

  REFERENCES

  SELECT

  UPDATE

  Column: 列名

  schema: 模式名

  object: 對象名

4.數據字典

   USER_SOURCE 用戶的存儲過程、函數的源代碼字典

  DBA_SOURCE 整個系統所有用戶的存儲過程、函數的源代碼字典

  ALL_SOURCE 當前用戶能使用的存儲過程(包括其她用戶授權)、函數的源代碼字典

  USER_ERRORS 用戶的存儲過程、函數的源代碼存在錯誤的信息字典

總結

以上是生活随笔為你收集整理的oracle 存储过程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。