diff --git a/advisor/rules.go b/advisor/rules.go index 542230e35eab72516c693ed69ad7fcdb14ce06c6..29074aaa3b7e2384dfb8bdeb507018865871fd66 100644 --- a/advisor/rules.go +++ b/advisor/rules.go @@ -709,8 +709,8 @@ func init() { "JOI.007": { Item: "JOI.007", Severity: "L4", - Summary: "不建议使用联表更新", - Content: `当需要同时更新多张表时建议使用简单 SQL,一条 SQL 只更新一张表,尽量不要将多张表的更新在同一条 SQL 中完成。`, + Summary: "不建议使用联表删除或更新", + Content: `当需要同时删除或更新多张表时建议使用简单语句,一条 SQL 只删除或更新一张表,尽量不要将多张表的操作在同一条语句。`, Case: "UPDATE users u LEFT JOIN hobby h ON u.id = h.uid SET u.name = 'pianoboy' WHERE h.hobby = 'piano';", Func: (*Query4Audit).RuleMultiDeleteUpdate, }, diff --git a/advisor/testdata/TestListHeuristicRules.golden b/advisor/testdata/TestListHeuristicRules.golden index a1607118cfbd143c5d0d6729230f4c4b7bba24cd..4ce689ec0da235ab818193e5c00adae1c601e013 100644 --- a/advisor/testdata/TestListHeuristicRules.golden +++ b/advisor/testdata/TestListHeuristicRules.golden @@ -702,11 +702,11 @@ select bp1.p_id, b1.d_d as l, b1.b_id from b1 join bp1 on (b1.b_id = bp1.b_id) l ```sql SELECT s,p,d FROM tbl WHERE p.p_id = (SELECT s.p_id FROM tbl WHERE s.c_id = 100996 AND s.q = 1 ) ``` -## 不建议使用联表更新 +## 不建议使用联表删除或更新 * **Item**:JOI.007 * **Severity**:L4 -* **Content**:当需要同时更新多张表时建议使用简单 SQL,一条 SQL 只更新一张表,尽量不要将多张表的更新在同一条 SQL 中完成。 +* **Content**:当需要同时删除或更新多张表时建议使用简单语句,一条 SQL 只删除或更新一张表,尽量不要将多张表的操作在同一条语句。 * **Case**: ```sql diff --git a/doc/heuristic.md b/doc/heuristic.md index a1607118cfbd143c5d0d6729230f4c4b7bba24cd..4ce689ec0da235ab818193e5c00adae1c601e013 100644 --- a/doc/heuristic.md +++ b/doc/heuristic.md @@ -702,11 +702,11 @@ select bp1.p_id, b1.d_d as l, b1.b_id from b1 join bp1 on (b1.b_id = bp1.b_id) l ```sql SELECT s,p,d FROM tbl WHERE p.p_id = (SELECT s.p_id FROM tbl WHERE s.c_id = 100996 AND s.q = 1 ) ``` -## 不建议使用联表更新 +## 不建议使用联表删除或更新 * **Item**:JOI.007 * **Severity**:L4 -* **Content**:当需要同时更新多张表时建议使用简单 SQL,一条 SQL 只更新一张表,尽量不要将多张表的更新在同一条 SQL 中完成。 +* **Content**:当需要同时删除或更新多张表时建议使用简单语句,一条 SQL 只删除或更新一张表,尽量不要将多张表的操作在同一条语句。 * **Case**: ```sql