2

純粋な PL/SQL を使用して Oracle がインストールされている場所を特定することはできますか?

ユースケース: 外部 C ライブラリを呼び出すには、その正確なパス (create library呼び出し用) を知る必要があります。DLL は Oracle の BIN ディレクトリに常駐しますが、スクリプトで DB インストールのパスをハードコードすることはできません...

4

3 に答える 3

3
DECLARE
 RetVal VARCHAR2(100);
BEGIN
  dbms_system.get_env('ORACLE_HOME', RetVal);
  dbms_output.put_line(RetVal);
END;

注: デフォルトでは、このパッケージへのアクセス許可がない可能性があります。

于 2009-06-19T13:48:24.157 に答える
2

Windows と Oracle 10g では、次のように動作します。

SELECT  
substr(file_spec,1,instr(file_spec,'\',1,3)) 
FROM dba_libraries 
WHERE library_name='DBMS_SUMADV_LIB'
于 2009-06-19T13:45:39.293 に答える