Ponieważ nie w ten sposób zmieniasz wartość we wstawianym wierszu - musisz ją zmodyfikować za pomocą :NEW
składnia (dokumentacja
); i nie pokazałeś, jak pobrać odpowiednią wartość z MODELO
tabela.
Musisz zrobić coś takiego:
CREATE OR REPLACE TRIGGER inicializar_plazas_disponibles
BEFORE INSERT OR UPDATE ON vuelo
FOR EACH ROW
BEGIN
SELECT capacidad
INTO :NEW.plazas_disponibles
FROM modelo
WHERE ... some condition, presumably another :NEW column ...
END;
(Chociaż nie jestem do końca pewien, czy możesz wybrać bezpośrednio do :NEW
value — spróbuj tego, ale jeśli nie, musisz zadeklarować zmienną tego samego typu, wybierz ją, a następnie przypisz ją do :NEW
).