我的Apex应用程序中有2页,分别是page1和Page 2。
在第1页中,我有2个字段要保存,以便可以在第2页中使用它完全插入表中,而主键是我创建的序列。
在第2页:主键被隐藏(顺序)
我有一个“保存”按钮,上面写了一个匿名块(动态操作->执行PLSQL代码),该页面将同时插入第1页和第2页“详细信息”到表中,成功并且没有问题。
但是问题出在“更新”按钮上。
我再次使用匿名块(动态操作->执行PLSQL代码)来更新page2上的详细信息。但是记录没有在数据库中更新。
我正在使用的加入条件
Id =:P6_PRIMARY_KEY(:P6_PRIMARY_KEY是隐藏字段,Id是具有序列的数据库字段)
我认为我无法在where条件下获取ID。
不确定我是否缺少某些东西。
我已经使用类似的匿名块完成了向数据库的插入,每当我单击“保存”按钮时,它运行良好并创建了一条记录。
我对“更新”按钮也做同样的事情。它不会更新也没有错误。
我的主键是一个序列。我认为以某种方式不能保留主键的值。我需要在可能的情况下进行一些更改。
答案 0 :(得分:1)
取消隐藏P6_PRIMARY_KEY
,以便您看到其中的内容。也许您每次都在获取一个新的序列号,所以-怪不得join无法正常工作。如果是这种情况,请通过应用IF
(例如
if :P6_PRIMARY_KEY is null then
:P6_PRIMARY_KEY := seq_name.nextval;
end if;
或通过设置处理条件,例如项目为空(当然是哪个?P6_PRIMARY_KEY
。)
此外,启用调试,运行页面,执行更新,然后查看调试结果。它会显示所有项目的值,以及已执行的代码,因此可能会有助于找到罪魁祸首。