问题描述
我尝试了以下几点:
但是得到了以下错误
我检查了数据库PL/SQL包和类型引用,并注意到没有列出dbms_system包。我用谷歌搜索了这个问题,但找不到任何其他解决方案。
我能够通过使用注册表来找出ora_home目录,但是最好通过SQL或PL/SQL来做到这一点。
DECLARE theresult varchar2(1000); begin dbms_system.get_env('ORACLE_HOME', theresult); dbms_output.put_line('result = ' || theresult); end;复制
但是得到了以下错误
line 2: ORA-06550: line 4, column 3: PLS-00201: identifier 'DBMS_SYSTEM.GET_ENV' must be declared ORA-06550: line 4, column 3:复制
我检查了数据库PL/SQL包和类型引用,并注意到没有列出dbms_system包。我用谷歌搜索了这个问题,但找不到任何其他解决方案。
我能够通过使用注册表来找出ora_home目录,但是最好通过SQL或PL/SQL来做到这一点。
专家解答
DBMS_SYSTEM是一个内部例程,因此仅授予SYS。
我倾向于使用外部表,例如
请记住,环境变量是数据库启动的变量,而不是会话中的变量
我倾向于使用外部表,例如
runenv.bat ========== @echo off C:\Windows\System32\cmd.exe /c "set" SQL> CREATE TABLE t 2 ( env_name VARCHAR2(100) 3 , env_val VARCHAR2(1000) 4 ) 5 ORGANIZATION EXTERNAL 6 ( 7 TYPE ORACLE_LOADER 8 DEFAULT DIRECTORY temp 9 ACCESS PARAMETERS 10 ( 11 RECORDS DELIMITED BY NEWLINE 12 PREPROCESSOR temp: 'runenv.bat' 13 FIELDS TERMINATED BY '=' 14 ) 15 LOCATION ('empty.txt') 16 ) 17 REJECT LIMIT UNLIMITED; Table created. (where empty.txt is a file of zero size) SQL> select * from t; ENV_NAME ---------------------------------------------------------------------------------------------------- ENV_VAL ---------------------------------------------------------------------------------------------------------------------------------- COMSPEC C:\WINDOWS\system32\cmd.exe ORACLE_HOME c:\oracle\product\12.2.0.1 PATH c:\oracle\product\12.2.0.1\bin;C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Dell\DW WLAN Card;c:\oracle\product\12.1.0.2\b in;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System3 2\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Progr am Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C: \Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\bin;c:\bin\usr\local\wbin;C:\Program Files (x86)\Windows Live\Sh ared;C:\Program Files\Git\cmd;C:\Program Files (x86)\Skype\Phone\;c:\bin\ffmpeg\bin;C:\WINDOWS\system32\config\systemprofile\AppDa ta\Local\Microsoft\WindowsApps PATHEXT .COM;.EXE;.BAT;.CMD;.VBS;.JS;.WS;.MSC PROMPT $P$G 5 rows selected.复制
请记住,环境变量是数据库启动的变量,而不是会话中的变量
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle DataGuard高可用性解决方案详解
孙莹
572次阅读
2025-03-26 23:27:33
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
531次阅读
2025-04-15 17:24:06
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
433次阅读
2025-04-18 14:18:38
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
429次阅读
2025-04-08 09:12:48
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
427次阅读
2025-04-22 00:20:37
墨天轮个人数说知识点合集
JiekeXu
427次阅读
2025-04-01 15:56:03
Oracle SQL 执行计划分析与优化指南
Digital Observer
424次阅读
2025-04-01 11:08:44
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
402次阅读
2025-04-22 00:13:51
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
390次阅读
2025-04-20 10:07:02
Oracle 19c RAC更换IP实战,运维必看!
szrsu
363次阅读
2025-04-08 23:57:08