:NEW
を使用する必要があります および :OLD
挿入された列を参照するたびに。
CREATE OR REPLACE TRIGGER ManageCall AFTER INSERT ON STATE_CHANGE FOR EACH ROW DECLARE x_coord NUMBER; y_coord NUMBER; BEGIN IF :NEW.ChangeType='C' THEN SELECT X, Y INTO x_coord, y_coord FROM TELEPHONE t WHERE t.PHONENO =:NEW.PHONENO; END IF; END;コード> プレ>
WHEN
を使用している場合 こちら
(「WHEN句」を検索):
したがって、以下も同様に機能するはずです:
CREATE OR REPLACE TRIGGER ManageCall AFTER INSERT ON STATE_CHANGE FOR EACH ROW WHEN (NEW.ChangeType='C') DECLARE x_coord NUMBER; y_coord NUMBER; BEGIN SELECT X, Y INTO x_coord, y_coord FROM 電話 WHERE PHONENO =:NEW.PHONENO; END;コード> プレ>