目前我有一个用 更新日期字段的触发器sysdate
,不幸的是,如果更新发生在同一秒内,这有时可能不是唯一的。是否可以更改要使用的列,systimestamp
以便它使用毫秒并且始终是唯一的。
触发器如下所示:
BEGIN
IF INSERTING or :old.STATUS_FLAG <> :new.STATUS_FLAG THEN
INSERT INTO T_SCHEME_STATUS_HISTORY
(SCHEME_ID, STATUS_FLAG, DATE_STATUS_CHANGED, AUDIT_CREDENTIALS, AUDIT_DTM)
VALUES
(:new.SCHEME_ID, :new.STATUS_FLAG, sysdate, :new.AUDIT_CREDENTIALS, SYSDATE);
END IF;
END;
我想更改DATE_STATUS CHANGED
要使用的systimestamp
,所以它总是 unqiue 但它正在更新的列是类型DATE(7)
,所以它不适合。
有没有办法改变桌子接受systimestamp
?如果您需要更多信息,请告诉我。