Oracle Trigger Обновление поля при вставке или обновлении - PullRequest
8 голосов
/ 02 декабря 2009

По какой-то причине у меня есть пробел о том, как делать что-то подобное.

У меня есть таблица, которая выглядит так:

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

Если я вставляю или обновляю запись, последнее обновленное поле должно обновлять системную дату. Как бы я поступил так?

Ответы [ 2 ]

13 голосов
/ 02 декабря 2009
CREATE OR REPLACE TRIGGER your_trigger_name
BEFORE INSERT OR UPDATE
ON your_table
FOR EACH ROW
DECLARE
BEGIN
   :new.LastUpdated := sysdate;
END;

Попробуй это. У меня не было сервера оракула под рукой, но я надеюсь, что синтаксис правильный

0 голосов
/ 02 декабря 2009

создать или заменить триггер mytable_bi перед вставкой на mytable для каждого ряда начать

: NEW.lastupdated: = sysdate ();

конец;

создать или заменить триггер mytable_bu до обновления на mytable для каждого ряда начать

: NEW.lastupdated: = sysdate ();

конец; * +1011 *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...