Oracle 10g引入了 DBMS_SYSTEM包中的一个过程GET_ENV。这个过程获得一个环境变量名称并返回环境变量的值。但是它不会返回环境变量PATH的值: set serveroutput on; create or replace PROCEDURE dump_osenvs as buffer varchar2(300); begin sys.dbms_system.get_env('ORACLE_HOME', buffer); dbms_output.put_line('ORACLE_HOME: '|| buffer); sys.dbms_system.get_env('ORACLE_SID',buffer); dbms_output.put_line('ORACLE_SID: '|| buffer); sys.dbms_system.get_env('COMPUTERNAME',buffer); dbms_output.put_line('COMPUTERNAME: '|| buffer); sys.dbms_system.get_env('OS',buffer); dbms_output.put_line('OS: '|| buffer); sys.dbms_system.get_env('TEMP',buffer); dbms_output.put_line('TEMP: '|| buffer); sys.dbms_system.get_env('WINDIR',buffer); dbms_output.put_line('WINDIR: '|| buffer); sys.dbms_system.get_env('SYSTEMROOT',buffer); dbms_output.put_line('SYSTEMROOT: '|| buffer); sys.dbms_system.get_env('PROGRAMFILES',buffer); dbms_output.put_line('PROGRAMFILES: '|| buffer); sys.dbms_system.get_env('COMSPEC',buffer); dbms_output.put_line('COMSPEC: '|| buffer); sys.dbms_system.get_env('PROCESSOR_ARCHITECTURE',buffer); dbms_output.put_line('PROCESSOR_ARCHITECTURE: '|| buffer); sys.dbms_system.get_env('PROCESSOR_IDENTIFIER',buffer); dbms_output.put_line('PROCESSOR_IDENTIFIER: '|| buffer); end ; / 过程已创建。 下面给出这个过程的输出结果: SQL> exec dump_osenvs; ORACLE_HOME: E:\oracle\product\10.2.0\db_1 ORACLE_SID: orclv COMPUTERNAME: WIN_DESK1 OS: Windows_NT TEMP: C:\WINDOWS\TEMP WINDIR: C:\WINDOWS SYSTEMROOT: C:\WINDOWS PROGRAMFILES: C:\Program Files COMSPEC: C:\WINDOWS\system32\cmd.exe PROCESSOR_ARCHITECTURE: x86 PROCESSOR_IDENTIFIER: x86 Family 6 Model 15 Stepping 13, GenuineIntel PL/SQL 过程已成功完成。 转载请注明源地址: www.youyus.com