在 Oracle Apex 中显示或插入 SQL 结果

Posted

技术标签:

【中文标题】在 Oracle Apex 中显示或插入 SQL 结果【英文标题】:Show or insert a SQL result in Oracle Apex 【发布时间】:2020-03-11 21:52:08 【问题描述】:

我有下一个代码

select
  MULTIMEDIA_COMPONENTES_HMI.COSTO * :P4_CANTIDAD,
  MULTIMEDIA_COMPONENTES_HMI.COSTO * :P4_CANTIDAD as COSTO
from MULTIMEDIA_COMPONENTES_HMI 
where num=:P4_COSTO;

我想在文本框中显示结果或在按下创建按钮时直接将结果插入数据库。我该怎么做或者我应该使用什么类型的元素来显示结果?

【问题讨论】:

【参考方案1】:

这个问题有不止一个解决方案。如果要在执行查询时将值加载到文本框,并立即为用户显示结果,则必须使用动态操作,由您引用的项目上的按钮或值更改事件触发:P4_CANTIDAD或 P4_COSTO。 此动态操作可能有一个带有执行 PL/SQL 代码操作的 TRUE 触发器。

PL/SQL 查询可以做一些事情,比如显示所有更改的数据,并在数据库中插入新信息。

select
  MULTIMEDIA_COMPONENTES_HMI.COSTO * :P4_CANTIDAD into :P4_TEXTBOX
from MULTIMEDIA_COMPONENTES_HMI 
where num=:P4_COSTO;

Insert into MULTIMEDIA_COMPONENTES_HMI 
(COSTO)
values
(:P4_COSTO);

当您创建动态操作时,您必须在 PL/SQL 代码文本区域下方输入要提交的项目和要返回的项目,以设置正确的会话状态而不提交完整的页面。

另一个没有动态操作的解决方案是在提交并将数据插入数据库后简单地创建一个页面进程。然后在页眉之后创建一个页面流程,使用数据库中的新值重新填充您的项目,或者在项目的源区域中定义 Select Into 语句。

【讨论】:

查询有效,但目前我想在文本字段中显示结果:P4_TEXTBOX 不显示结果 也许您还必须在要更改 :P4_TEXTBOX 值的确切时间创建一个设置值动态操作。执行上述查询后直接。

以上是关于在 Oracle Apex 中显示或插入 SQL 结果的主要内容,如果未能解决你的问题,请参考以下文章

Oracle Apex 的对象浏览器中未显示任何数据

Apex Oracle - 多个动态操作

如何获取要显示在 Oracle APEX 交互式报告中的图像或链接?

在 Oracle Apex 中显示服务器端条件取决于页面项值的按钮?

在交互式网格 Oracle Apex 中的自定义验证中突出显示列

Oracle Apex SQL 中的条件格式(红色文本)