如何在触发器正文中显示结果和/或任何消息?

Jav*_*s ღ 5 mysql database triggers

嗨,我想创建触发器,如果​​条件满足,则应执行其主体,并且我想显示一些消息或在执行触发器主体时应显示的任何数据。

我希望如果产品数量少于 50,那么它应该显示消息或一些数据。是否可以显示消息?

这testdata是表名。

代码 :

delimiter //

create trigger trigger2 before update on test.testdata

for each row 
begin

if new.qty < 50 then

    **display here some message that quantity is less**

end if;

end;

//
delimiter ;
Run Code Online (Sandbox Code Playgroud)

Dev*_*art 6

你不能这样做,在 MySQL 中没有地方输出它们。作为变通方法,您可以将您的消息添加到表格中,然后阅读此表格。

简短的例子 -

CREATE TABLE table1 (
  column1 VARCHAR(255) DEFAULT NULL
);

CREATE TABLE messages (
  id INT(11) NOT NULL AUTO_INCREMENT,
  message VARCHAR(255) DEFAULT NULL,
  time TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (id)
);

DELIMITER $$

CREATE TRIGGER trigger1
    AFTER INSERT
    ON table1
    FOR EACH ROW
BEGIN
  INSERT INTO messages(message) VALUES ('new action');
END
$$

DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

此外,您可以使用 UDF 函数编写您的逻辑。更多信息 - CREATE FUNCTION Syntax for User-Defined Functions。