Oracle11g 检查oracle窗体多记录块中的重复值
我想要的是,如果插入的记录已经是multi-record块中的一条记录,则在移动到下一行时显示警报Oracle11g 检查oracle窗体多记录块中的重复值,oracle11g,oracleforms,Oracle11g,Oracleforms,我想要的是,如果插入的记录已经是multi-record块中的一条记录,则在移动到下一行时显示警报 我必须把它放在什么触发器里 您可以使用几个选项 一种是发布输入的值(在WHEN-NEW-RECORD-INSTANCE中)触发器。它会,嗯,发布你到目前为止输入的所有内容。然后,您可以编写一个WHEN-VALIDATE-ITEM触发器,该触发器从该表中选择,并检查该值是否已经存在。或者,如果该列上存在唯一约束,则数据库将自行执行其工作,即引发异常 另一个选项是逐字循环一个块中的所有行,并将第一行
我必须把它放在什么触发器里 您可以使用几个选项 一种是发布输入的值(在WHEN-NEW-RECORD-INSTANCE中)触发器。它会,嗯,发布你到目前为止输入的所有内容。然后,您可以编写一个
WHEN-VALIDATE-ITEM
触发器,该触发器从该表中选择,并检查该值是否已经存在。或者,如果该列上存在唯一约束
,则数据库将自行执行其工作,即引发异常
另一个选项是逐字循环一个块中的所有行,并将第一行的值与所有其他行进行比较,然后将第二行的值与所有行进行比较,以此类推
或者,您可以使用记录组(通常用于值列表)。基本上,您需要检查您输入的值是否存在于记录组中。更多信息,以及FMB文件,请访问
或者,您可以使用所述的计算项目(同时附上FMB)
正如你所看到的,有很多方法可以做到这一点;探索其中的每一个选项,并选择您认为最有用/最吸引人/最易于实施的选项。您可以使用几个选项
一种是发布输入的值(在WHEN-NEW-RECORD-INSTANCE中)触发器。它会,嗯,发布你到目前为止输入的所有内容。然后,您可以编写一个WHEN-VALIDATE-ITEM
触发器,该触发器从该表中选择,并检查该值是否已经存在。或者,如果该列上存在唯一约束
,则数据库将自行执行其工作,即引发异常
另一个选项是逐字循环一个块中的所有行,并将第一行的值与所有其他行进行比较,然后将第二行的值与所有行进行比较,以此类推
或者,您可以使用记录组(通常用于值列表)。基本上,您需要检查您输入的值是否存在于记录组中。更多信息,以及FMB文件,请访问
或者,您可以使用所述的计算项目(同时附上FMB)
正如你所看到的,有很多方法可以做到这一点;探索其中的每一项,并选择您认为最有用/最吸引人/最易于实施的一项