如何更新:APP_USER 字段中的详细信息,apex5.0

how to update :APP_USER detail in a field, apex5.0

知道如何在审计字段中添加 :APP_USER 吗? 当用户在 order_comments 字段中输入数据并单击应用更改时得到一个表单,然后应更新审计字段用户 ID、日期时间。 怎么做?

一个古老的问题。

出于审计目的捕获用户的常用方法是在 table 上使用行前触发器。

例如,使用这些(常见)审计字段:

  • CREATION_USER
  • CREATION_DT
  • LAST_UDPATE_USER
  • LAST_UPDATE_DT

你会像这样在 table 上触发:

CREATE OR REPLACE TRIGGER MY_TABLE_RBIU_AUDIT
    BEFORE INSERT OR UPDATE ON MY_TABLE
    FOR EACH ROW
BEGIN
  IF INSERTING THEN
    :NEW.CREATION_USER := NVL(v('APP_USER'), USER);
    :NEW.CREATION_DT := SYSDATE;
  END IF;

  IF UPDATING THEN
    :NEW.LAST_UPDATE_USER := NVL(v('APP_USER'), USER);
    :NEW.LAST_UPDATE_DT := SYSDATE;
  END IF;
END;
/

如果您不想使用触发器并且不使用 API 来执行此操作,并且出于某些奇怪的原因想在 apex 本身内执行此操作(提示:使用触发器或api),您仍然可以选择将项目的默认值设置为 &APP_USER.(使用 "Static Text" 时)