【问题标题】:Oracle Trigger Updating a field on an Insert or an UpdateOracle 触发器在插入或更新时更新字段
【发布时间】:2010-12-22 11:10:32
【问题描述】:

出于某种原因,我对如何做这样的事情一头雾水。

我有一张如下所示的表格:

UserID   |  Name   |  DateAdded   |   LastUpated
--------------------------------------------------
1        | James Q | 1/1/2009     |

如果我插入或更新记录,lastupdated 字段应更新为 sysdate。 我将如何去做这样的事情?

【问题讨论】:

    标签: oracle triggers


    【解决方案1】:
    CREATE OR REPLACE TRIGGER your_trigger_name
    BEFORE INSERT OR UPDATE
    ON your_table
    FOR EACH ROW
    DECLARE
    BEGIN
       :new.LastUpdated := sysdate;
    END;
    

    试试看。我手头没有 oracle 服务器,但我希望语法正确。

    【讨论】:

      【解决方案2】:

      创建或替换触发器 mytable_bi 在 mytable 上插入之前 对于每一行 开始

      :NEW.lastupdated := sysdate();

      结束;

      创建或替换触发器 mytable_bu 在更新 mytable 之前 对于每一行 开始

      :NEW.lastupdated := sysdate();

      结束;

      【讨论】:

        猜你喜欢
        • 2014-07-10
        • 2021-02-26
        • 2019-07-28
        • 2013-07-01
        • 1970-01-01
        • 2018-03-22
        • 2013-01-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多