MySql 使用 Select 子句插入触发器后

问题描述 投票:0回答:1

以下查询生成 20 个字符的随机字符串:

SELECT LEFT(MD5(RAND()), 20); 

我的目标是在添加新行时将其插入 users_address 字段的标记字段中。我创建了以下触发器:

BEGIN       
    INSERT INTO users_address (token) VALUES (SELECT LEFT(MD5(RAND()), 20));
END

返回错误“您的 SQL 语法有错误;请检查手册...”。如果我用实际字符串替换 SELECT 语句,则会创建触发器,因此问题似乎出在 SELECT 上。我需要做什么来改变才能使其发挥作用?

mysql triggers
1个回答
1
投票

SELECT
VALUES
子句中不需要 :

INSERT INTO users_address (token) VALUES (LEFT(MD5(RAND()), 20));

演示在这里

© www.soinside.com 2019 - 2024. All rights reserved.