Я хотел бы создать триггер, чтобы я мог контролировать отрицательные значения.
Сначала я пытался...
CREATE TRIGGER POS_PROD
BEFORE INSERT
ON PRODUCTS
FOR EACH ROW
BEGIN
IF stock <0 OR price <0
THEN
RESIGNAL SET MESSAGE_TEXT = 'Please insert a positive value';
END IF;
END
Проблема в том, что когда я пытаюсь вставить значения, я получаю сообщение об ошибке «Цена — неизвестное поле». Тогда я решил попробовать это...
CREATE TRIGGER POS_PROD
AFTER INSERT
ON PRODUCTS
FOR EACH ROW
BEGIN
IF stock <0 OR price <0
THEN
RESIGNAL SET MESSAGE_TEXT = 'Please insert a positive value';
ROLLBACK;
END IF;
END
Но я получил эту ошибку... Явная или неявная фиксация не разрешена в хранимой функции или триггере».
Большое спасибо.