Oracle 內建子程式簡介

2021-09-12 05:29:43 字數 1525 閱讀 3437

大學生兼職支援:[url]

sql> set serveroutput on;

sql> remark 內建程式包

sql> remark 常用的內建程式包如下:

sql> remark dbms_out pl/sql中的輸入和輸出顯示

sql> remark dbms_job 任務排程服務

sql> remark dbms_log 大型物件操作

sql> remark dbms_pipe 資料庫管道,允許會話間通訊

sql> remark dbms_sql 動態sql

sql> remark utl_file 文字檔案的輸入與輸出;

sql> remark 對應的程式包下面還有一些儲存過程:

sql> remark put和put_line:將資料放入輸出緩衝,put_line同時會輸出換行符;

sql> remark new_line: 是在緩衝區中新增乙個換行符,表明一行的結束;

sql> remark get_line: 返回乙個字串;

sql> remark ename disable 用於控制緩衝區的大小

sql> dbms_output.get_line();

sp2-0734: unknown command beginning "dbms_outpu..." - rest of line ignored.

sql> dbms_output.put_line('dd');

sp2-0734: unknown command beginning "dbms_outpu..." - rest of line ignored.

sql> remark 示例:呼叫上述對應包中的儲存過程

sql> execute dbms_output.put_line('測試');

測試 pl/sql procedure successfully completed.

sql> remark dbms_lob lob--large objects-大物件 :是用來儲存大量的二進位制和文字資料的一種資料型別(4gb)

sql> remark 目前分為兩種型別:內部lob 和 外部lob,內部lob將資料以位元組流的形式儲存在資料庫的內部。因此:內部lob 的許多操作都可以參與事務,也可以像處理普通資料一樣對其進行備份和恢復操作。

sql> remark 常見的lob 過程:

sql> remark dbms_lob 包中主要提供了幾個過程供使用者對內部的lob 字段進行維護。

sql> spool off;

dbms_random 的程式包是獲取隨機數的程式包,這個包中提供了獲取隨機數和隨機字元的函式;

函式如下:

initialize(seed in binary_integer) 設定隨機數生成器的種子,並重新初始化

seed(val in binary_integer); 設定隨機數生成的種子

normal return number 返回乙個隨機數

string(opt in char , len in number); 返回乙個隨機生成的字串;

Oracle 子程式內聯

start 如果子程式 a 呼叫 b,內聯可以把 b 的 合併到 a 中,從而減少子程式呼叫,提高效能,下面是乙個簡單的例子。子程式 a procedure a isbegin 指定下面的子程式 b 內聯 pragma inline b,yes b 1 注意此處的子程式不會內聯 b 2 end a ...

oracle巢狀子程式

劍破冰山學習筆記 巢狀子程式的說明 將乙個子程式定義在乙個pl sql塊中的,該子程式稱為巢狀子程式。只有定義在具名塊中,才能儲存到資料庫中,匿名塊裡是無法儲存到資料庫的 區別 函式和過程是schema級別的子程式,包裡的函式和過程,是package級別的子程式。這兩類都不是巢狀子程式。宣告 巢狀子...

Oracle中的子程式和包

在oracle中通過使用子程式和包將pl sql 封裝起來,從而實現模組化,在以後的呼叫中可以多次復用,而不受前台語言的限制,同時通過用子程式和包將pl sql 封裝起來,有利於提高開發效率和執行效率,但是維護性卻沒有物件導向靈活,如果乙個子程式受到影響,就需要修改該子程式的定義。在oracle中子...