diff --git a/advisor/rules.go b/advisor/rules.go index 1d5d5b7d837d322b16dab0250720cf6b538ae95f..bc279fa9760f1adb9e3f953e362367a07997989b 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 3cc4249dde5f68387f6facbacb768af36f37c110..32dc038a9e5091daced48d7ca8d69f6abe7523fe 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 3cc4249dde5f68387f6facbacb768af36f37c110..32dc038a9e5091daced48d7ca8d69f6abe7523fe 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