在oracle中插入或更新数据时,如何自动更新时间和日期?

时间:2016-10-20 15:58:45

标签: oracle

我希望每次在oracle表中输入数据时,必须在名为' CREATION_DATE'。

的列之一中自动更新日期和时间。

2 个答案:

答案 0 :(得分:1)

设置SYSDATE的默认值比触发更有效。正如帮助提到的那样,如果在INSERT中显式提供NULL,则可以覆盖默认值。如果您根本不打算通过应用程序传递日期时间,则可以将列定义为NOT NULL,默认为sysdate。

答案 1 :(得分:0)

触发器会做你想要的。我认为你正在寻找的是这样的东西:

CREATE OR REPLACE TRIGGER date_trigger
  AFTER INSERT ON your_table
  FOR EACH ROW
WHEN (new.your_table> 0)
BEGIN
    :NEW.CREATION_DATE:= SYSDATE;
END;
/

根据您的需要,我通常希望添加create_date和update_date列来获取稍后可能发生的更改的时间戳。