我想知道您是否可以帮助我解决当前的问题,即使用单个表单将数据插入到我的关系数据库中的多个表中。我是APEX的新手,但对mysql和php编程有一些背景知识。在过去,我通常通过创建一个来自不同表的所有列的视图来实现这样的任务,我想填充并使用简单的插入命令,但在顶点做同样的事情给我和错误说“ORA-01779:不能修改映射到非密钥保留表的列“。
答案 0 :(得分:3)
在Oracle中,您不能只更新具有例如JOIN子句的视图。 Oracle不会将所有列映射回源表:一个表可能,而其他表则不会。这不是一个顶点问题:如果你要在数据库中对你的视图运行更新,你也会得到这个错误。
如果您希望您的顶点屏幕保持尽可能透明,那么您可能需要在视图上考虑用户而不是触发器。您必须在此触发器中编写正确的dml语句,以确保将数据正确地推送到所有表中 另一种选择是仅使用视图来获取,并使用不同的进程将数据推送到正确的表。使用数据层包可能会减少使用存储在顶点中的代码(例如,在顶点本身有很多plsql代码通常不受欢迎,而是存储在包中)。
答案 1 :(得分:0)
创建项目并获取所有项目值,并在提交按钮上使用PL / SQL。
例如:p1_party_Name,p2_Service_Name
if (localStorage.user === undefined) {
localStorage.user = "username";
}