У меня небольшая проблема, я практикую триггеры в Oracle. Я пытался создать триггер, который при вставке записи в таблицу, чье поле (числовое значение) имеет значение больше 20 000, немедленно записывается в историю сдата, описание (запись больше 2000000), идентификатор списка и какой пользователь вставил запись.
Это таблица для сохранения истории:
CREATE TABLE RESERVA
(
ID INT,
FECHA DATE,
USUARIO VARCHAR2(10),
DESCRIPCION VARCHAR2(20)
);
y este es el trigger que he intentado hacer pero no me funciona
-----TRIGGER--
CREATE OR REPLACE TRIGGER INSERTELO
AFTER INSERT
ON DATOS
DECLARE
ID int,
Marital_Status varchar2(10),
Gender varchar2 (8),
Income float,
Children int,
Education varchar2(20),
Occupation varchar2(20),
Home_Owner varchar2 (5),
Cars int,
Commute_Distance varchar2(15),
Region varchar2 (13),
Age int,
Purchased_Bike varchar2 (5)
BEGIN
SELECT (@ID=ID, @MARITAL_STATUS=MARITAL_STATUS, @GENDER=GENDER, @INCOME=INCOME, @CHILDREN=CHILDREN, @EDUCATION=EDUCATION, @OCUPPATION=OCCUPATION, @HOME_OWNER=HOME_OWNER, @CARS=CARS, @COMMUTE_DISTANCE=COMMUTE_DISTANCE,@REGION=REGION, @AGE=AGE, @PURCHASED_BIKE=PURCHASED_BIKE) FROM INSERTED
INSERT INTO DATOS VALUES (@ID, @MARITAL_STATUS, @GENDER, @INCOME, @CHILDREN, @EDUCATION, @OCUPPATION, @HOME_OWNER, @CARS, @COMMUTE_DISTANCE,@REGION, @AGE, @PURCHASED_BIKE)
IF @INCOME>2000000
INSERT INTO RESERVA (@ID, SYSDATE, USER, 'EL REGISTRO SUPERO LOS 2 MILLONES')