這種過程想要看到輸出值一般來說是用dbms_output包中的put_line來做的,在serverout 開啟的情況下,這個(gè)會(huì)包中的函數(shù)會(huì)將查詢的結(jié)果什么的,直接打印在屏幕上。
做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)的開發(fā),更需要了解用戶,從用戶角度來建設(shè)網(wǎng)站,獲得較好的用戶體驗(yàn)。成都創(chuàng)新互聯(lián)多年互聯(lián)網(wǎng)經(jīng)驗(yàn),見的多,溝通容易、能幫助客戶提出的運(yùn)營(yíng)建議。作為成都一家網(wǎng)絡(luò)公司,打造的就是網(wǎng)站建設(shè)產(chǎn)品直銷的概念。選擇成都創(chuàng)新互聯(lián),不只是建站,我們把建站作為產(chǎn)品,不斷的更新、完善,讓每位來訪用戶感受到浩方產(chǎn)品的價(jià)值服務(wù)。
其他時(shí)間的查詢結(jié)果只會(huì)在后臺(tái)作為了一個(gè)過程量存在(這里查詢語句中顯示的1,就是一個(gè)過程量,當(dāng)過程執(zhí)行完,或者這個(gè)1傳遞完,那么這個(gè)1也就消失了),除非你將查詢結(jié)果插入一張表內(nèi),這樣的話你就能看見存儲(chǔ)在那張插入表內(nèi)的結(jié)果了,一般來說過程中的量是不會(huì)直接輸出到屏幕上的。(如果是自定義函數(shù)有返回值,那么肯定是可以輸出到屏幕上的)
當(dāng)然還有一種情況能看到查詢結(jié)果,那就是調(diào)試,調(diào)試過程的時(shí)候(其實(shí)就是一步一步的執(zhí)行過程,有些工具是一行一行的),用工具能看到每一步的結(jié)果。
首先在sqlplus中set serverout on 以打開顯示至于輸出,可以用dbms_output若在sqlplus中還可以用print
可用DBMS_OUTPUT.PUT_LINE()對(duì)存儲(chǔ)過程的進(jìn)行輸出。
編寫存儲(chǔ)過程:
create or replace procedure test_pro(in_num number)
as
M number;
begin
M := in_num;
if 0 M then
dbms_output.put_line('輸出SQL語句1');
elsif M 3 then
dbms_output.put_line('輸出SQL語句2');
else
dbms_output.put_line('nothing');
end if;
end;
擴(kuò)展資料;
存儲(chǔ)在數(shù)據(jù)庫(kù)的數(shù)據(jù)字典中,存儲(chǔ)在當(dāng)前的應(yīng)用中安全性由數(shù)據(jù)庫(kù)提供安全保證,必須通過授權(quán)才能使用存儲(chǔ)子程序,安全性靠應(yīng)用程序來保證,如果能執(zhí)行應(yīng)用程序,就能執(zhí)行該子程序。模式描述IN參數(shù)用來從調(diào)用環(huán)境中向存儲(chǔ)過程傳遞值,不能給IN參數(shù)賦值,給此參數(shù)傳遞的值可以是常量、有值的變量、表達(dá)式等。
參考資料來源:百度百科-Oracle存儲(chǔ)過程
存儲(chǔ)過程直接打印Create or replace procedure Sel is AA date;beginSelect sysdate into AA from dual;dbms_output.put_line(AA);end;變量返回Create or replace procedure Sel (AA out date)isbeginSelect sysdate into AA from dual;end;/set serverout on declare v_aa date; begin sel (v_aa); dbms_output.put_line(v_aa); end;