處理預定義例外
預定義例外是由pl/sql所提供的系統例外。當pl/sql應用程式違反了oracle規定的限制時,則會隱含的觸發乙個內部例外。
pl/sql為開發人員提供了二十多個預定義例外
常用的例外:
1.case_not_found:
在開發pl/sql塊中編寫case語句時,如果在when子句中沒有包含必須的條件分支,就會觸發case_not_found的例外。
例項:create or replace procedure sun_pro15(sunno number) is
v_sal emp.sal%type;
begin
select sal into v_sal from emp where empno=sunno;
case
when v_sal<1000 then
update emp set sal=sal+100 where empno=sunno;
when v_sal<2000 then
update emp set sal=sal+200 where empno=sunno;
end case;
exception
when case_not_found then
dbms_output.put_line('case語句沒有與'||v_sal||'相匹配的條件');
end;
2.cursor_already_open
當重新開啟已經開啟的游標時,會隱含的觸發例外cursor_already_open
例項:declare
cursor emp_cursor is select ename,sal from emp;
begin
open emp_cursor;
for emp_recordl is emp_cursor loop
dbms_output.put_line(emp_recordl.ename);
end loop;
exception
when cursor_already_open then
dbms_output.put_line('游標已經開啟');
end;
預定義,巨集定義
巨集定義 其作用就是 換其名曰 給程式中的一段特殊的 函式,資料取了個簡單明瞭的名字。不過有一點這傢伙的作用範圍是全域性的。即使它是在某乙個函式塊中定義的。這個其實也容易理解。因為巨集定義是預定義的一種,在我們的程式之前,由預編譯器 cpp 提前編譯出來了,那個時候程式裡的結構是個啥樣子編譯器壓根就...
預定義知識
1.巨集指令 define error import undef elif if include else ifdef line endif ifndef pragma 2 define define width 80 define length width 10 define test f1,f2...
預定義知識
預定義知識 寫於2005年12月26日 1.巨集指令 define error import undef elif if include else ifdef line endif ifndef pragma 2 define define width 80 define length width ...