BEGIN MERGE_STR := ‘‘; FOR V_P IN C_PRODUCTINFO LOOP MERGE_STR := MERGE_STR || V_P.PRODUCTNAMESTR || ‘[R:‘ || V_P.MONTHFEE || ‘]. ‘; END LOOP; RETURN RESULT; END; / --函数可以有默认值 CREATE OR REPLACE FUNCTION CountryNumber(n_max number default 10000,n_min number default 10) RETURN VARCHAR2 IS v_resultvalue vacharr2(50); BEGIN RETURN v_resultvalue; END;
--异常处理例子 DECLARE V_NUM NUMBER(2) := 10; V_ZERO NUMBER(2) := 0; V_RESULT NUMBER(5); BEGIN V_RESULT := V_NUM / V_ZERO; EXCEPTION WHEN ZERO_DIVIDE THEN DBMS_OUTPUT.PUT_LINE(‘DIVIDE ZERO‘); END; 异常说明: DUP_VAL_INDEX:违反唯一性 LOGIN_DENIED: 登陆失败,用户名密码错误 NO_DATA_FOUND:没有发现数据存在 TOO_MANY_ROWS:数据行太多, ZERO_DIVIDE:除数为0错误 VALUE_ERROR: 算法或转换错误 CASE_NOT_FOUND: 在case语句中发现不匹配的when语句 DECLARE E_OVERNUMBER EXCEPTION; BEGIN IF V_MAX < V_NUM THEN -- deal.... RAISE E_OVERNUMBER; END IF EXCEPTION WHEN E_OVERNUMBER THEN DBMS_OUTPUT.PUT_LINE("ERR MSG"); END;
【ORACLE】常用脚本
标签:
本文系统来源:http://www.cnblogs.com/liuyongcn/p/4232374.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!