Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在SQL触发器中插入用户ID_Mysql_Sql_Triggers - Fatal编程技术网

Mysql 在SQL触发器中插入用户ID

Mysql 在SQL触发器中插入用户ID,mysql,sql,triggers,Mysql,Sql,Triggers,我一直在浏览网页寻找答案,但大多数人都是用编程语言来回答的。我目前正在运行一个MySQL服务器,希望跟踪staff表,当更新staff members位置时,触发器应将值插入staff\u audit表。现在最大的问题是如何访问用户id 迄今为止的代码: CREATE TRIGGER staff_aft_update AFTER UPDATE ON staff FOR EACH ROW INSERT INTO staff_audit ( sau_st_staf

我一直在浏览网页寻找答案,但大多数人都是用编程语言来回答的。我目前正在运行一个MySQL服务器,希望跟踪
staff
表,当更新staff members位置时,触发器应将值插入
staff\u audit
表。现在最大的问题是如何访问用户id

迄今为止的代码:

CREATE TRIGGER staff_aft_update 
  AFTER UPDATE ON staff 
  FOR EACH ROW 
    INSERT INTO staff_audit 
      ( sau_st_staffno, sau_st_position_before, 
        sau_st_position_after, sau_user_id, ts) 
    VALUES 
      ( old.st_staffno, old.st_position, 
        new.st_position, userid);

其中,
userid
是我想要插入ID的地方。提前感谢。

如果我理解正确,您想要执行
更新的人的
用户ID
?如果
userid
是MySQL用户名,只需使用
SUBSTRING_INDEX(USER(),'@',1)
;否则,您需要从应用程序代码中提供
用户ID

如果我理解正确,您需要执行
更新的人员的
用户ID
?如果
userid
是MySQL用户名,只需使用
SUBSTRING_INDEX(USER(),'@',1)
;否则,您需要从应用程序代码中提供
用户ID

以下链接将帮助您找到答案。这给出了MySQL中的信息函数列表

实际上,您需要使用信息函数USER()根据需要实现的逻辑从应用程序代码传递用户id

对于您的需求,确实需要截断从“@”符号开始的所有内容,因为函数用户的格式是user@localhost如果您正在使用信息功能。。。。
希望这有助于您找到答案。下面的链接将帮助您找到答案。这给出了MySQL中的信息函数列表

实际上,您需要使用信息函数USER()根据需要实现的逻辑从应用程序代码传递用户id

对于您的需求,确实需要截断从“@”符号开始的所有内容,因为函数用户的格式是user@localhost如果您正在使用信息功能。。。。
希望这有助于进入'staff\u aft\u update'table.mysql,但我也有权访问sql server。抱歉进入'staff\u aft\u update'table.mysql,但我也有权访问sql server。您不能为此使用
CURRENT\u USER()
,因为触发器将在其定义者的帐户下运行。仅供参考,我的答案使用
子字符串索引执行您提到的截断。您不能为此使用
当前用户()
,因为触发器将在其定义者的帐户下运行。仅供参考,我的答案将使用
子字符串索引执行您提到的截断。