检查oracle表单多记录块中的重复值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检查oracle表单多记录块中的重复值相关的知识,希望对你有一定的参考价值。

我想要的是当我移动到下一行时显示警报,如果我插入的记录已经是多记录块中的记录之一。

enter image description here

我必须把它放在什么触发器上?

答案

您可以使用多种选项。

一种是输入POST值(在WHEN-NEW-RECORD-INSTANCE中)触发器。它会发布到目前为止您输入的所有内容。然后,你可以写一个WHEN-VALIDATE-ITEM触发器,从该表中SELECTs并检查这样的值是否已经存在。或者,如果在那些(那些)列上有UNIQUE CONSTRAINT,数据库将自己完成其工作,即引发异常。

另一种选择是逐字循环遍历块中的所有行,并将第一行的值与所有其他行进行比较,然后将第二行的值与所有其他值进行比较,等等。

或者,您可以使用记录组(通常用于值列表)。基本上,您要检查您输入的值是否存在于记录组中。有关Craig's blog的更多信息以及FMB文件。

或者,您可以使用计算项目,如enter link description here(FMB附件)所述。

正如你所看到的,有很多方法可以做到这一点;探索每一个并选择你认为最有用/最有吸引力/易于实现的那个。

以上是关于检查oracle表单多记录块中的重复值的主要内容,如果未能解决你的问题,请参考以下文章

oracle 表单获取表和多行块中的数据

检查数据块记录是不是处于编辑或添加状态

删除主块oracle表单时如何删除所有细节块

Oracle - 如何检查多条记录中的值以及一个值是不是匹配 - 将其用于更大的数据集

如何检查Case When Statement中的重复值

如何根据Oracle中的值查找表名[重复]