Conditional PL/SQL compilation. Note the $IF, $THEN, $ELSIF and $END directives.
Create or replace procedure selective_directives is
begin
$IF DBMS_DB_VERSION.VER_LE_10_1
$THEN
dbms_output.put_line(‘I’m on a Database 10 release 1’);
$ELSEIF DBMS_DB_VERSION.VER_LE_10_2
$THEN
dbms_output.put_line(‘I’m on a Database 10 release 2’);
$ELSEIF DBMS_DB_VERSION.VER_LE_11_1
$THEN
dbms_output.put_line(‘I’m on a Database 11 release 1’);
$END
END;
/
Cool way to support multiple DB versions in your PL/SQL code.
Works from version 10g onwards.
Best regards |
Henrik Harsfort |
Senior Oracle ConsultantOracle Exadata 11g Certified Implementation Specialist |