在触发器中将两个用户定义的变量粘合在一起

时间:2013-09-13 11:40:53

标签: mysql

非常基本,我猜,但不是今天:-)这让我疯了。如何在触发器中将两个用户定义的变量粘合在一起?

CREATE TRIGGER update_table2 AFTER UPDATE ON table1
FOR EACH ROW BEGIN
      SET @var1="A";
      SET @var2="B";
      SET @varT="";
        ????? 
      UPDATE table2 SET val=@varT;
      END  

我喜欢varT为'AB'

我试过

@varT=CONCAT(@var1,@var2);
@varT=@var1+@var2;
@varT=@var1.@var2;

但它们都不起作用。

2 个答案:

答案 0 :(得分:3)

SET @t = CONCAT(@a, @b);

SELECT CONCAT(@a, @b) INTO @t;

SELECT @t := CONCAT(@a, @b);

但我宁愿

UPDATE table2 SET val = CONCAT(@a, @b);

答案 1 :(得分:0)

<强>解决

正确的语法是

SET @varT=CONCAT(@var1,@var2);

即使你想添加多个字符串,似乎也需要SET。

SET @var1='A';
SET @var2='B';
SET @var3='C';
SET @XXX = CONCAT(@var1,@var2);
SET @XXX = CONCAT(@XXX,@var3);

导致'ABC';