sql >> Databáze >  >> RDS >> Oracle

Spouštěče:jak mohu inicializovat hodnotu v tabulce s hodnotou v jiné?

Protože takto neměníte hodnotu ve vkládaném řádku – musíte ji upravit pomocí :NEW syntaxe (dokumentace ); a neukázali jste, jak získat relevantní hodnotu z MODELO tabulka.

Musíte udělat něco jako:

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;

(I když si nejsem úplně jistý, zda můžete vybrat rovnou do :NEW value – zkuste to, ale pokud ne, budete muset deklarovat proměnnou stejného typu, vybrat do ní místo toho a pak ji přiřadit k :NEW ).




  1. Tip na PostgreSQL

  2. Mysql extrahující pole v PHP

  3. Chyba fulltextového vyhledávání mysql

  4. Jak používat pg_stat_activity?