Как узнать дату и идентификатор строки?
Предполагая, что это столбцы в вашей таблице ORDER с именем DELIVERY_DATE и ID, ваш триггер должен выглядеть примерно так:
CREATE OR REPLACE TRIGGER your_trigger_name
BEFORE UPDATE ON Order
FOR EACH ROW
BEGIN
if :new.delivery_date != :old.delivery_date
then
UPDATE Delivery d
set d.delivery_date = :new.delivery_date
where d.order_id = :new.id;
end if;
END;
Обратите внимание на предложение FOR EACH ROW: это необходимо для ссылки на значения из отдельных строк. Я использовал конструкцию IF для проверки, выполнять ли ОБНОВЛЕНИЕ при доставке Если у вас нет другой логики в вашем триггере, вы можете написать это так ...
CREATE OR REPLACE TRIGGER your_trigger_name
BEFORE UPDATE OF delivery_date ON Order
FOR EACH ROW
BEGIN
UPDATE Delivery d
set d.delivery_date = :new.delivery_date
where d.order_id = :new.id;
END;
Я ответил на вопрос, который вы задали, но в качестве отступления я укажу, что ваша модель данных является неоптимальной. Правильно нормализованный дизайн будет содержать DELIVERY_DATE только для одной таблицы: DELIVERY кажется логичным местом для этого.