-1
CREATE OR REPLACE TRIGGER ABC_TEST_TRIG
BEFORE UPDATE ON ABC_TEST
FOR EACH ROW
DECLARE
NAME_CH VARCHAR2(25);
NUM_CH NUMBER(5);
BEGIN
--SELECT NAME,NUM INTO NAME_CH, NUM_CH FROM ABC_TEST WHERE NAME ='KUNAL';
INSERT INTO ABC_NEW (NEW_NAME,OLD_NAME,NEW_NUM,OLD_NUM)
VALUES(':NEW.NEW_NAME',':OLD.NAME',':NEW.NEW_NUM',':OLD.NUM') ;
END;
/
UPDATE ABC_TEST SET NAME ='KUSH' , NUM=90 WHERE NAME = 'KUNAL';
エラー:トリガーはコンパイルされますが、発射にORA-01722エラーが発生します
UPDATE ABC_TEST SET NAME ='KUSH' , NUM=90 WHERE NAME = 'KUNAL'
Error report -
SQL Error: ORA-01722: invalid number
ORA-06512: at "APPSREAD.ABC_TEST_TRIG", line 7
ORA-04088: error during execution of trigger 'APPSREAD.ABC_TEST_TRIG'
01722. 00000 - "invalid number"
*Cause: The specified number was invalid.
*Action: Specify a valid number.