当用户从登录的网站插入/更新/删除数据时,我尝试创建触发器以自动在log_tabel上插入数据。我无法在User-Defind Variabel @user_id中存储user_id。
存储用户定义变量:
$_SESSION['user_id']= $row['user_id'];
mysqli_query($dbc,"SET @user_id = $_SESSION['user_id'] ");
触发码:
CREATE TRIGGER insert_log_user
AFTER INSERT ON users
INSERT INTO `logs` (`log_id`,`user_id`,`action`, `log_date`) VALUES
(NULL, @user_id,'INSERT', NOW() );
当我插入用户时显示错误: user_id不能为空
我查看了MYSQL手册:10.4 User-Defined Variables
尝试使用phpmyadmin手动中的相同代码(“SET @ t1 = 1,@ t2 = 2,@ t3:= 4;”)并且没有工作resut :(“MySQL返回空结果集(即零行) )。(查询耗时0.0003秒。)“)