oracle - 如何使用 APEX 函数编译 Oracle 包?
问题描述
我正在尝试编译我的同事留给我的 Oracle 包。但是,包装规格。包含一些我的 Oracle 环境中可能没有构建的功能。
create or replace PACKAGE AAA IS
g_session VARCHAR2(400) := v('SESSION');
g_user VARCHAR2(400) := v('APP_USER');
PROCEDURE p_1;
END AAA;
当我尝试在 Oracle 开发人员中编译包规范时,我说
'V' must be declared.
由于给我留下这段代码的同事不再可用,我不知道如何编译它们。
解决方案
该v
功能在 Apex 环境中是有意义的;它将返回您传递给它的参数的值。在您的示例中,将是这样的:
v('SESSION') = 32604633949883 --> session ID
v('APP_USER') = LITTLEFOOT --> user logged to Apex
除了 Apex 环境之外,该v
函数还可以从您命名的 PL/SQL 存储过程、包等中运行。
由于您无法编译该代码,因此包含该软件包的数据库中似乎没有安装 Apex。有没有?如果没有,那么您将无法编译它,因此您可以:
- 安装 Apex,或
- 从代码中删除
v
函数调用
推荐阅读
- java - Java初学者错误:java:找不到符号
- javascript - 如何使控制器的方法对 Codeigniter 的 previous_url() 不可用
- java - Android:Theme.xml 和 Styles.xml?
- javascript - Bootstrap 5 双轮播定位
- python - os.chdir 返回带有双斜杠的目录
- c++ - How to access template specialization objects through variables
- python - 通过 python 3.7 安装 label-studio 时遇到问题
- json - 反序列化 JSON 无效的 JObject 值
- ruby-on-rails - 如何在 vuejs 中绑定 Wistia 视频播放/结束事件
- javascript - 如何将保存在 JavaScript 中的静态文件夹中的图像作为变量包含在 Django 中