+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| _date | varchar(20) | NO | PRI | NULL | |
| petrol | int(11) | NO | | NULL | |
| diesel | int(11) | NO | | NULL | |
| gas | int(11) | NO | | NULL | |
+--------+-------------+------+-----+---------+-------+
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| _date1 | varchar(20) | NO | PRI | NULL | |
| petrol1 | int(11) | NO | | NULL | |
| diesel1 | int(11) | NO | | NULL | |
| gas1 | int(11) | NO | | NULL | |
+---------+-------------+------+-----+---------+-------+
Я новичок в триггерах и в целом в SQL и хотел использовать после триггера вставки, чтобы после ввода значений в таблицу «покупка», упомянутую выше. То же самое значение должно быть вставлено в таблицу «Sell» (также упомянуто выше), но после математической операции:
petrol+petrol*0.3, diesel+diesel*0.15, gas+gas*0.25
Я пытался использовать это:
CREATE TRIGGER t1
AFTER INSERT
ON buy
FOR EACH ROW
BEGIN
(
INSERT INTO Sell (_date1, petrol1, diesel1, gas1)
SELECT _date, petrol+petrol*0.3, diesel+diesel*0.15, gas+gas*0.25
FROM inserted
)
END
Но потом он показал эту ошибку ниже:
ОШИБКА 1064 (42000): у вас ошибка в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера MySQL для правильного синтаксиса, чтобы использовать около 'после вставки
на покупку
для каждого ряда
начать
(вставить в Sell (_date1, petrol1, diese 'в строке 1