最近想了一下,其實很多時候都是在做解決問題的能力,在it屆就是debug的能力
很開心參加這活動第二年,今年有點參加錯組,且也很多天要補正
但還是很榮幸的能跟大家說,我堅持很多天都記得做一件事情
其實我們就是認真的完成一件事情就好
Oracle Stored Procedure(SP)的Package 資料處理函式
分為兩部分,一是specification,另一是body
specification是Package的interface,在specification宣告Package名稱,程式如Function及Procedure的名稱及參數,公開變數,Cursor,Exception等等
body則是Package的邏輯處理處,有點像是一個式模型 一個式控制模型處理的函示
我們在debug時只要知道Package的specification中定義的程序名稱及參數型別等就可以大概搜尋那些環節出現錯誤
嘗試建立一個Function及一個Procedure
-- spec
CREATE OR REPLACE PACKAGE Hello_package AS
FUNCTION fn_print(pid_name IN VARCHAR2) RETURN VARCHAR2;
PROCEDURE Let_get_number(pid_id IN VARCHAR2, pid_score OUT NUMBER);
END Hello_package;
-- body
CREATE OR REPLACE PACKAGE BODY Hello_package AS
varkk VARCHAR2(30) := 'hello world';
-- Function
FUNCTION fn_print(pid_name IN VARCHAR2) RETURN VARCHAR2 IS
BEGIN
DBMS_OUTPUT.PUT_LINE(pid_name);
RETURN var1;
END fn_print;
-- Procedure
PROCEDURE Let_get_number(pid_id IN VARCHAR2, po_score OUT NUMBER) IS
BEGIN
SELECT SCORE INTO pid_score FROM MY_grade WHERE USER_ID = pid_id;
END Let_get_number;
END Hello_package;
varkk定義在body中,為Package中的變數
若此資料表不存在,則在編譯上面的Package時會出現錯誤
tbd