gpt4 book ai didi

MYSQL 在 CONCAT 函数中使用 NEW 关键字插入时触发错误

转载 作者:行者123 更新时间:2023-11-30 22:31:53 25 4
gpt4 key购买 nike

我在 mysql 触发器插入中遇到问题:

CREATE TRIGGER `trg1` AFTER INSERT ON `table1` FOR EACH ROW 

BEGIN
SET @column = (SELECT GROUP_CONCAT(table_1.col1 SEPARATOR ',') FROM table2,table3..etc;
SET @values = (SELECT GROUP_CONCAT(CONCAT_WS('.','NEW', table_1.col1) SEPARATOR ',') FROM table2,table3..etc);
INSERT INTO log_table(Description)VALUES(CONCAT(@values));
END;
$$
DELIMITER ;

我正在选择列名称并将其与 NEW 关键字连接起来,然后将值作为单个字符串插入到日志表中。

但是这些值以字符串格式存储为 'NEW.col1,NEW.col2..etc' 而没有 NEW 关键字的值。PLs 帮帮我..

table structure

最佳答案

  1. Within the trigger body, the OLD and NEW keywords enable you to access columns in the rows affected by a trigger
  2. In an INSERT trigger, only NEW.col_name can be used.
SET @values = (SELECT GROUP_CONCAT(CONCAT_WS('.',table1.col1,NEW.col1,NEW.col2,NEW.col3) SEPARATOR ',') FROM table2,table3..etc);

您在 ''(引号)中使用了 NEW。将其删除。并使用 NEW.col1

希望这对您有所帮助。

关于MYSQL 在 CONCAT 函数中使用 NEW 关键字插入时触发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33665689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com