mysql 触发器update替代new用法详解

小潘seo 重庆小潘seo博客和你一起学习SEO知识,共同分享SEO优化~

在mysql触发器中不可以直接使用update进行数据更新操作了,这个不是mysql bug而官方说可能使用了update会导致死循环了,推荐我们直接使用new赋值变量了.

mysql下insert和update触发器是不能再使用update和insert操作的,官方说明是为了防止出现死循环,解决的办法就是直接对new里的字段赋值,其实也挺方便的,不过也说明mysql的技术有待加强,毕竟人家mssql能够实现的功能,到你这就出问题了,代码如下:

  1. DELIMITER$$
  2. USE`zn_home`$$
  3. DROPTRIGGER/*!50032IFEXISTS*/`add_name`$$
  4. CREATE
  5. /*!50017DEFINER=‘test’@'%’*/
  6. TRIGGER`add_name`BEFOREINSERTON`uchome_sow`
  7. FOREACHROWBEGIN
  8. DECLARE_nameCHAR(20);
  9. SELECT`name`INTO_nameFROMuchome_spaceWHEREuid=new.uid;//phpfensi.com
  10. SETnew.name=_name;
  11. END;
  12. $$

看我们只要利用SET new.name = _name;就可以代替update了.

相关广告
  • mysql 触发器update替代new用法详解 mysql 触发器update替代new用法详解 mysql 触发器update替代new用法详解
相关阅读

mysql 触发器update替代new用法详解

2019/10/10 17:36:46 | 谷歌SEO算法 | 手机网站制作