ORACLE----TimeStamp(时间戳)自动更新

傷城~ 2022-06-03 03:19 1637阅读 0赞

之前对id的自增长进行了设置,原以为时间戳的更新也类似,使用序列之类的,但最终发现跟序列没半毛钱关系。触发器是肯定要用的,但编写脚本也是需要的。

(1)创建触发器

这里写图片描述

这里写图片描述

图2中,我们要选择事件(即例子中的INSERT,UPDATE),触发时间(即INSERT,UPDATE事件的前或后,例子中是before),列(例子中为MODIFIED_DATE,为TimeStamp类型),新旧值(为系统默认值OLD和NEW)。

(2)添加脚本

点击上图的确定后,将生成脚本

  1. CREATE OR REPLACE TRIGGER TRIGGER3 BEFORE INSERT OR UPDATE OF MODIFIED_DATE ON T_MATERIAL_STOCK_CURRENT REFERENCING OLD AS OLD NEW AS NEW BEGIN NULL;
  2. END;

我们需要对BEGIN和END之间的代码进行更新。即将NULL;替换成

  1. :NEW.MODIFIED_DATE := SYSDATE;

其中MODIFIED_DATE 为列名称。SYSDATE为系统时间戳。

(3)启动触发器

与设置id自增长类似。见前文。

至此,TimeStamp可自动更新。

发表评论

表情:
评论列表 (有 0 条评论,1637人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Swagger Model时间自动转型

    前言 > 坦白来讲,如果不做任何处理,从数据库表的Date类型字段通过接口吐出来的却是一串时间戳,这样的话,开发者还得另外开辟一个字段来存储转化的具体日期,想必繁琐之极!

    相关 ORACLE----TimeStamp(时间)自动更新

    之前对id的自增长进行了设置,原以为时间戳的更新也类似,使用序列之类的,但最终发现跟序列没半毛钱关系。触发器是肯定要用的,但编写脚本也是需要的。 (1)创建触发器 ![