如果我在MySQL中使用触发器执行审计跟踪,并且我使用MySQL会话变量来存储我需要存储的PHP变量,例如:
SET @user_id = $user_id
SET @user_ip = $user_ip_address
然后在触发器中使用该信息,那会起作用吗?这是一个好的解决方案吗?
我担心的是,如果多个用户同时进行查询,@ user_id会话变量可能会在执行触发器之前发生变化,并且会像其他用户进行更改一样存储在数据库中。
会发生吗?
答案 0 :(得分:0)
据我所知,变量只是会话,所以你可以使用相同的变量名进行一千次会话,而不会有重叠。