MySQL使用触发器禁止某行数据某些列的修改

起因是有来线上演示环境的系统管理员账号经常被禁用导致其他的用户登录不了,然后需要手动改数据状态才行。

原理是利用触发器的旧数据覆盖新数据

delimiter $
CREATE TRIGGER`sys_user_2_update`
BEFORE UPDATE ON`sys_user`FOR EACH ROW 
BEGIN
	IF NEW.id = 2 THEN
		SET NEW.status=OLD.status,NEW.deleted=OLD.deleted;
	END IF;
END;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章