一、DBMS_OUTPUT的用途
1、調試代碼,輸出變量和表達式的值。
2、調試代碼,輸出動態SQL拼接的語句,再運行輸出的語句進行調試。
3、生成報表等功能。
二、啟用和停用DBMS_OUTPUT功能
1、set serveroutput on,啟用DBMS_OUTPUT。
2、set serveroutput off,停用DBMS_OUTPUT。
三、設置DBMS_OUTPUT緩沖區大小
1、默認值是20000字節
2、設置本作用范圍使用 DBMS_OUTPUT.ENABLE(【新的緩沖區大小】)。
3、設置本會話范圍使用 set serveroutput on size 【新的緩沖區大小】。
四、DBMS_OUTPUT參考
| 名稱 | 類型 | 參數列表 | 參數描述 | 功能描述 |
| DBMS_OUTPUT.CHARARR | TYPE | 作為GET_LINES的參數lines的類型。 | ||
| DBMS_OUTPUT.ENABLE | PROCEDURE | buffer_size IN INTEGER DEFAULT |
buffer_size:緩沖區大小,不輸取默認值20000 | 在當前作用域啟用DBMS_OUTPUT,並可修改緩沖區大小。 |
| DBMS_OUTPUT.DISABLE | PROCEDURE | 無 | 在當前作用域停用DBMS_OUTPUT。 | |
| DBMS_OUTPUT.PUT | PROCEDURE | line IN VARCHAR2 | line:要輸出的文本 | 向緩沖區輸入文本,不輸出。 |
| DBMS_OUTPUT.PUT_LINE | PROCEDURE | line IN VARCHAR2 | line:要輸出的文本 | 向緩沖區輸入文本和一個換行符,將緩沖區中的所有文本輸出,之后清空換行符。 |
| DBMS_OUTPUT.NEW_LINE | PROCEDURE | 無 | 向緩沖區一個換行符,將緩沖區中的所有文本輸出,之后清空換行符。 | |
| DBMS_OUTPUT.GET_LINE | PROCEDURE | line OUT VARCHAR2, status OUT INTEGER |
line:接收文本,不包含換行符參數 status:0=調用成功,1=沒有更多行 | 將緩沖區中的第一行文本提取到line,並將緩沖區清空。 |
| DBMS_OUTPUT.GET_LINES | PROCEDURE | lines OUT CHARARR,
numlines IN OUT INTEGER
|
lines:接收多行文本的數組 numlines:輸入是要獲取行的數量,如果輸入和輸出一致,則調用成功。否則沒有更多行 |
將緩沖區中從第一行開始的numlines行文本提取到lines,並將緩沖區清空。 |
