【DB笔试面试495】Oracle中哪个包可以获取环境变量的值?

  • 2019 年 10 月 11 日
  • 筆記

题目部分

在Oracle中,Oracle中哪个包可以获取环境变量的值?

答案部分

可以通过DBMS_SYSTEM.GET_ENV来获取环境变量的当前生效值,示例如下所示:

SYS@LHRDB1> VAR ENVOUT VARCHAR2(200);  SYS@LHRDB1> SET SERVEROUTPUT ON  SYS@LHRDB1> EXEC DBMS_SYSTEM.GET_ENV('ORACLE_HOME',:ENVOUT);  PL/SQL PROCEDURE SUCCESSFULLY COMPLETED.  SYS@LHRDB1> PRINT ENVOUT  ENVOUT  -------------------------------------------------------------------  /oracle/app/oracle/product/11.2.0/db  SYS@LHRDB1> SET SERVEROUTPUT ON  SYS@LHRDB1> DECLARE    2  RETVAL VARCHAR2(4000);    3  BEGIN    4  SYS.DBMS_SYSTEM.GET_ENV('ORACLE_SID', RETVAL);    5  DBMS_OUTPUT.PUT_LINE(RETVAL);    6  END;    7  /  LHRDB1  PL/SQL procedure successfully completed.  SYS@LHRDB1> DECLARE    2  RETVAL VARCHAR2(100);    3  BEGIN    4  SYS.DBMS_SYSTEM.GET_ENV('ORACLE_HOME', RETVAL);    5  DBMS_OUTPUT.PUT_LINE(RETVAL);    6  END;    7  /  /oracle/app/oracle/product/11.2.0/db  PL/SQL procedure successfully completed.  

本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。