要在 MySQL 触发器中引用当前会话的用户ID,可以使用 MySQL 的系统变量 CURRENT_USER()。您可以在触发器中使用以下语法将其添加到会话中的用户ID:

DECLARE user_id INT;
SET user_id = (SELECT SUBSTRING_INDEX(CURRENT_USER(), '@', 1));

在上述代码中,SUBSTRING_INDEX(CURRENT_USER(), '@', 1) 用于从 CURRENT_USER() 返回的完整用户ID中提取用户ID部分。然后,将其赋给 user_id 变量进行进一步处理。

然后,您可以在触发器的其他逻辑中使用 user_id 变量,例如:

IF user_id = 1 THEN
    -- 对于用户ID为1的操作
ELSE
    -- 对于其他用户ID的操作
END IF;

请注意,为了能够在触发器中使用用户ID,您需要在触发器创建之前,确保用户已经登录并且会话已经建立。

MySQL 触发器中获取当前会话用户ID

原文地址: https://www.cveoy.top/t/topic/pe8f 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录