文章预览
作者 | 江南一点雨 来源 | 江南一点雨 昨天松哥在朋友圈发了这样一张图: 很多小伙伴看到了能够快速发现问题,当 company_id 为 null 的时候,会导致全表更新。 但是也有小伙伴不解,自己平时就是这么写的呀,也没什么问题,如果有问题,那么上面的 SQL 该怎么改呢? 松哥来和大家简单聊几句。 一 防止全表更新 如果在生产环境中使用 UPDATE 语句更新表数据,此时如果忘记携带本应该添加的 WHERE 条件,那么后果不堪设想。 那么怎么避免这个问题呢? 二 sql_safe_updates sql_safe_updates 是 MySQL 数据库中的一个参数,它的作用是增强数据安全性,防止因误操作导致的数据丢失或破坏。 具体来说,当 sql_safe_updates 设置为 ON(启用)时,MySQL 将阻止执行没有明确 WHERE 子句的 UPDATE 或 DELETE 语句。这意味着如果试图运行一个不包含 WHERE 条件来限定更新或删除范
………………………………