IF-THEN 语句是最简单形式的 IF。如果条件为 true,将执行 THEN 和 END IF 之间的语句。否则,跳过它们。
IF boolean-expression THEN
statements
END IF;
在以下示例中,使用 IF-THEN 语句来测试并显示具有佣金的员工。
DECLARE
v_empno emp.empno%TYPE;
v_comm emp.comm%TYPE;
CURSOR emp_cursor IS SELECT empno, comm FROM emp;
BEGIN
OPEN emp_cursor;
DBMS_OUTPUT.PUT_LINE('EMPNO COMM');
DBMS_OUTPUT.PUT_LINE('----- -------');
LOOP
FETCH emp_cursor INTO v_empno, v_comm;
EXIT WHEN emp_cursor%NOTFOUND;
--
-- Test whether or not the employee gets a commission
--
IF v_comm IS NOT NULL AND v_comm > 0 THEN
DBMS_OUTPUT.PUT_LINE(v_empno || ' ' ||
TO_CHAR(v_comm,'$99999.99'));
END IF;
END LOOP;
CLOSE emp_cursor;
END;
下面是此程序的输出。
EMPNO COMM
----- -------
7499 $300.00
7521 $500.00
7654 $1400.00