oracle inside(8)
來源:互聯網
上載者:User
DBMS_OUTPUT包是一個可以用SQL*Plus將輸出顯示到螢幕上的包;UTL_FILE是一個伺服器端的內建讀寫文
件包,可以在伺服器端讀寫資料;TEXT_IO是一個用戶端的讀寫包,可以在用戶端讀寫資料。
8.1 DBMS_OUTPUT 程式包
利用SET SERVEROUTPUT ON 開啟螢幕顯示時,實際上是命令SQL*Plus 在每一條語句後檢查緩衝區中的數
據,以取回並顯示它。同時,DBMS_OUTPUT也可以用於兩個PL/SQL 過程之間交換資料。
PL/SQL 進階編程
第 30 頁 共 30 頁
8.1.1 開啟螢幕顯示
1. 使用命令列:
SET SERVEROUTPUT ON; (Oracle 8.0 以前版本)
SET SERVEROUTPUT ON SIZE 20000; (Oracle 8.0 以後版本)
說明:上述語句隱含的調用了DBMS_OUTPUT.ENABLE,並為緩衝區分配了20000個位元組的空間。
注意:使用DBMS_OUTPUT將資料發送到SQL*Plus 時,在所有資料都發送之前,不能開始讀取資料!
2. 使用過程:
BEGIN
DBMS_OUTPUT.ENABLE(100000);
END;
8.1.2 關閉螢幕顯示
1. 使用命令列:
SET SERVEROUTPUT OFF;
2. 使用過程:
BEGIN
DBMS_OUTPUT.DISABLE;
END;
8.1.3 其他函數
1) DBMS_OUTPUT.PUT_LINE(type);
2) DBMS_OUTPUT.PUT(type); -- 其中 type 可以是NUMBER、VARCHAR2、DATE資料類型。
3) DBMS_OUTPUT.GUT_LINE(line OUT VARCHAR2, status OUT INEGER);
4) DBMS_OUTPUT.GUT_LINES(line OUT VARCHAR2, numlines IN OUT INEGER);