DECLARE v_name VARCHAR2(20); v_sal NUMBER(7,2); v_hiredate DATE; c_addsal NUMBER(7,2):=500; v_newsal NUMBER(7,2); BEGIN SELECT ename,sal,hiredate INTO v_name,v_sal,v_hiredate FROM emp WHERE empno=7788; v_newsal := v_sal + c_addsal; DBMS_OUTPUT.PUT_LINE(v_name||'的工資爲'||v_sal||'僱員日期爲'||v_hiredate||'工資漲後爲'||v_newsal); EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('沒有員工數據'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE(SQLERRM); END;
DECLARE v_name emp.ename%TYPE; v_sal emp.sal%TYPE; BEGIN SELECT ename,sal INTO v_name,v_sal FROM emp WHERE empno=7788; DBMS_OUTPUT.PUT_LINE(v_name||'的工資是'||v_sal); END;
DECLARE emp_record emp%ROWTYPE; BEGIN SELECT * INTO emp_record FROM emp WHERE empno=7788; DBMS_OUTPUT.PUT_LINE(emp_record.ename||'的工資是'||emp_record.sal); END;
DECLARE v_level CHAR(1):='&LEVEL'; BEGIN IF v_level='A' THEN DBMS_OUTPUT.PUT_LINE('優秀'); ELSIF v_level='B' THEN DBMS_OUTPUT.PUT_LINE('良好'); ELSIF v_level='C' THEN DBMS_OUTPUT.PUT_LINE('通常'); ELSE DBMS_OUTPUT.PUT_LINE('輸入有誤'); END IF; END;
DECLARE v_level CHAR(1):='&LEVEL'; BEGIN CASE v_level WHEN 'A' THEN DBMS_OUTPUT.PUT_LINE('優秀'); WHEN 'B' THEN DBMS_OUTPUT.PUT_LINE('良好'); WHEN 'C' THEN DBMS_OUTPUT.PUT_LINE('通常'); ELSE DBMS_OUTPUT.PUT_LINE('輸入有誤'); END CASE; END;
DECLARE v_num INT:=1; BEGIN LOOP DBMS_OUTPUT.PUT_LINE(v_num); EXIT WHEN v_num=5; v_num :=v_num+1; END LOOP; END;
DECLARE v_num INT:=0; BEGIN WHILE v_num<5 LOOP v_num :=v_num+1; CONTINUE WHEN v_num=4; DBMS_OUTPUT.PUT_LINE(v_num); END LOOP; END;
DECLARE v_num INT:=1; BEGIN WHILE v_num<=5 LOOP DBMS_OUTPUT.PUT_LINE(v_num); v_num :=v_num+1; END LOOP; END;
BEGIN FOR i IN REVERSE 1..5 LOOP DBMS_OUTPUT.PUT_LINE(i); END LOOP; END;
DECLARE
v_level CHAR(1):='&LEVEL'; BEGIN CASE v_level WHEN 'D' THEN GOTO the_next; WHEN 'A' THEN DBMS_OUTPUT.PUT_LINE('優秀'); WHEN 'B' THEN DBMS_OUTPUT.PUT_LINE('良好'); WHEN 'C' THEN DBMS_OUTPUT.PUT_LINE('通常'); END CASE; <<the_next>> null; END;
BEGIN <<outter>> FOR i IN 1..5 LOOP <<inner>> FOR j IN 1..5 LOOP CONTINUE WHEN j>i; DBMS_OUTPUT.PUT_LINE(i||'*'||j||'='||i*j); END LOOP inner; END LOOP outter; END;