Using the DBMS_WARNING Package to Display Warnings
-- When warnings disabled, the following procedure compiles with no warnings
CREATE OR REPLACE PROCEDURE Unreachable_code
AS
x CONSTANT BOOLEAN := true;
BEGIN
IF x THEN
dbms_output.Put_line('TRUE');
ELSE
dbms_output.Put_line('FALSE');
END IF;
END unreachable_code;
/
-- enable all warning messages for this session
CALL DBMS_WARNING.set_warning_setting_string('ENABLE:ALL' ,'SESSION');
-- Check the current warning setting
SELECT dbms_warning.Get_warning_setting_string()
FROM dual;
-- Recompile the procedure and a warning about unreachable code displays
ALTER PROCEDURE unreachable_code COMPILE;
SHOW ERRORS;
OUTPUT:-
you could have used the following ALTER PROCEDURE without the call to DBMS_WARNINGS.set_warning_setting_string:
ALTER PROCEDURE unreachable_code COMPILE PLSQL_WARNINGS = 'ENABLE:ALL' REUSE SETTINGS;
For more information, see ALTER PROCEDURE in Oracle Database SQL Reference,
DBMS_WARNING package in Oracle Database PL/SQL Packages and Types Reference, and
PLW- messages in Oracle Database Error Messages.
0 comments:
Post a Comment