能不用就不用吧。
NULL只是把控制权传递给后面的语句。
NULL语句的用处:
n 为GOTO语句提供一个目标
n 通过使条件语句的含义和行为更加清晰来提高可读性
n 创建占位符和子程序桩
n 表明清楚这种可能性,但不需要进行处理。
|
DECLARE v_job_id VARCHAR2(10); v_emp_id NUMBER(6) := 110; BEGIN SELECT job_id INTO v_job_id FROM employees WHERE employee_id = v_emp_id;
IF v_job_id = 'SA_REP' THEN UPDATE employees SET commission_pct = commission_pct * 1.2; ELSE --对应第2点 NULL; -- 员工如果不是'SA_REP' END IF; END; |
|
CREATE OR REPLACE PROCEDURE award_bonus ( emp_id NUMBER, bonus NUMBER ) AS BEGIN NULL; -- 占位符 -- 如果不加NULL语句,则产生编译错误 END award_bonus; |
|
-- AUTHID DEFINER设置调用权限 CREATE OR REPLACE PROCEDURE print_grade (grade CHAR) AUTHID DEFINER AS BEGIN CASE grade WHEN 'A' THEN DBMS_OUTPUT.PUT_LINE('优秀'); WHEN 'B' THEN DBMS_OUTPUT.PUT_LINE('良好'); WHEN 'C' THEN DBMS_OUTPUT.PUT_LINE('好'); WHEN 'D' THEN DBMS_OUTPUT.PUT_LINE('及格'); WHEN 'F' THEN DBMS_OUTPUT.PUT_LINE('不及格'); --无需处理 ELSE NULL; END CASE; END; |
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/17013648/viewspace-1107179/ ,如需转载,请注明出处,否则将追究法律责任。