前言:只要符合SQL和PL/SQL的語法語義,ORACLE就會成功的編譯過,不會提示任何信息
警告分類三種
1. SEVERE:檢查可能出現的不可預料結果,例:參數的別名問題
2. PERFORMANCE:性能問題,例:在insert時為NUMBER列提供了VARCHAR2類型
3. INFORMATINAL:死代碼
控制警告消息(PLSQL_WARNINGS)
默認參數為PLSQL_WARNINGS=’DISABLE:ALL’
Example:
alter session set PLSQL_WARNINGS='ENABLE:INFORMATIONAL';
CREATE OR REPLACE PROCEDURE DEAD_CODE IS
DD VARCHAR2(22);
BEGIN
IF 2>1 THEN
DD:='1';
ELSE --死代碼
DD:='2';
END IF;
END;
编译时会有警告:
[Warning] PLW-06002 (7: 9): PLW-06002: 無法執行的程式碼