2

我是 pl/sql 的新手,尤其是 oracle 形式的新手。

这是我的标准(store_A's (value) & store_B's(value) 差异超过 4000 然后触发触发器)

例如: store_A = 500 和 store_B = 5000 然后调用触发器(差不能超过 4000)

请帮我修改这段代码:

if :book_daily_stats.store_A > :book_daily_stats.store_B and :book_daily_stats.store_A < 4000
 then
  al_id:= Find_Alert ('Store_Caution')
  al_button:= Show_Alert(al_id)

  if al_button = Alert_Button1
    then
      Raise Form_Trigger_Failure;

  End if;
End;
4

1 回答 1

3

您不会(通常)“调用”触发器 - 触发器在满足其触发条件时被触发。

例如,您可能when-validate-item在表单项上有一个触发器。在该触发器的代码中,您可以使用以下内容:

if :book_daily_stats.store_A > :book_daily_stats.store_B
  and :book_daily_stats.store_A < 4000 then
    call_message (' Store_B''s value exceeded daily limits');
end if;

when-validate-item每当需要验证它附加到的项目时,都会触发此触发器 - 例如,当用户在项目中键入一个值然后尝试导航到另一个项目时(例如,通过单击另一个项目或按 Tab)。

于 2013-08-29T00:40:02.900 回答