1.最基本的dbms_output.put_line()方法
隨便在什麼地方,只要是begin和end之間,就可以使用dbms_output.put_line(output);
然而這會有乙個問題,就是使用該函式一次最多隻可以顯示255個字元,否則緩衝區會溢位。
此外,函式dbms_output.enable(20000)這種函式,僅僅是設定整個過程的全部輸出緩衝區大小,而非dbms_output.put_line()的緩衝區大小。
對於超過255個字元的變數,使用dbms_output.put_line()方法是沒有效的。據說在oracle10中,解除了這個限制,可以輸出任意大小的字串。
declare
output varchar2(200);
begin
output:=...; //賦值
dbms_output.put_line(output);
end;
如果以上執行結果成功但沒有顯示請執行 set serveroutput on; 然後就可以了;
2.使用表的方法
首先建立一張表,然後在pl/sql中將要輸出的內容插到表中。然後再從表中檢視內容。對於這種方法一次可以輸出幾千個字元。
(1) create table my_output{
id number(4),
txt varchar2(4000)
(2) declare
output varchar2(4000);
strsql varchar2(4500);
count number(4):=0;
begin
strsql:=delete * from my_output;
execute immediate strsql;
output:=...; //賦值
count:=count+1;
strsql:=insert into my_output value (count,||output||);
--在單引號中相當於字元
execute immediate strsql;
end;
3.使用輸出檔案的方法
如果變數非常大,以致連使用表都沒有辦法插入時,只有使用檔案方式了。
(1) create or replace directory tmp as d: esttmp;
--建立乙個資料夾路徑
(2) declare
file_handle utl_file.file_type;
output varchar2(30000);
begin
output:="....";
file_handle := utl_file.fopen(tmp, output.txt, w,[1-32767]);
--四個引數:目錄,檔名,開啟方式,最大行數(預設為2000)
utl_file.put_line(file_handle, output);
utl_file.fclose(file_handle);
exception
when utl_file.invalid_path then
raise_application_error(-20000, error: invalid path for file or path not in init.ora.);
end;
ORACLE資料庫PLSQL筆記
oracle資料庫plsql筆記 pl sql 是oracle的程式語言,用於擴充套件sql的程式設計能力,為資料庫程式增加了許多可能的功能。它允許將過程控制語句與 sql語句結合使用oracle 特有的程式語言pl sql補充了標準的關聯式資料庫語言sql,提供了各種過程化特性,包括迴圈 if t...
PLSQL連線oracle資料庫
方法一 instantclient 12 2 1 安裝 instantclient 12 2 軟體 免安裝oracle客戶端 2 plsql配置 開啟plsql 點取消,彈出plsql主介面 選單欄的tools 屬性preferences 首選項 連線 3 連線資訊 1 連線資訊 可以是ip 152...
plsql 匯出oracle資料庫
plsql 匯出資料庫有兩個問題,乙個是只匯出結構,乙個是匯出表結構加資料這樣的,首先人家讓我導成sql語句 這不是簡單,首先開啟plsql 一 匯出結構 1 然後tools export user objects.然後出來一片空白 2 要選擇哪個user 3 上面會出現好多表,選擇一下你要匯出的表...