2.變量 簡單變量:單值變量 變量名 變量類型[:=初始值]; 復合變量:先定義復合類型,然后再用來復合變量; 表類型: TYPE 類型名 IS TABLE OF 數據類型 INDEX BY BINARY_INTEGER; 變量名 表類型名; 記錄類型:TYPE 類型名 IS RECORD(變量名 類型, 變量名 類型...); 聲明變量的類型與指定表的指定列同類型: 變量名 表名.列名%TYPE; 聲明記錄類型變量的類型與指定表的行同類型: 變量名 表名%ROWTYPE;
3.條件語句 IF 條件 THEN 語句; ELSIF 條件2 THEN 語句2; ELSIF 條件2 THEN 語句2; ELSE 語句n; END IF;
4.循環語句 1) 簡單: LOOP 語句 EXIT WHEN 條件; END LOOP;
2) WHILE: WHILE 條件 LOOP 語句 END LOOP;
3) FOR FOR 數字變量 IN [REVERSE] 下限..上限 LOOP 語句 END LOOP;
5. 游標cursor:它是Oracle數據庫內的一個工作區,存放了SELECT語句的查詢集。 1) 它有一個指針,初始時指向查詢集中的首行。 2) 屬性:%found、%notfound、%rowcount、%isopen、 3) 使用步驟: a) 聲明變量用來保存數據。 b) 聲明游標,并指定查詢。cursor v_emp_cursor is select語句; c) 打開游標。open v_emp_cursor; d) 一次從游標中獲取一行記錄。fetch v_emp_cursor into 變量列表; e) 關閉游標。close v_emp_cursor; 4) for循環可以自動完成打開,獲取數據,關閉的功能。 declare v_emp_record emp%rowtype; cursor v_emp_cursor is select語句 [for update]; begin for v_emp_record in v_emp_cursor loop v_emp_record.ename; -- 獲取游標所有在位置行 update ... where current of v_emp_cursor; end loop; end; /