Skip to content

Commit 38c1997

Browse files
committed
* CROSS JOIN 允许没有 JOIN ON 引用赋值关联条件;默认禁用 JOIN ON 复杂关联方式
1 parent 96ee9dd commit 38c1997

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

APIJSONORM/src/main/java/apijson/orm/AbstractParser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1494,7 +1494,7 @@ else if (join != null){
14941494
}
14951495

14961496
Set<Entry<String, Object>> refSet = refObj.entrySet();
1497-
if (refSet.isEmpty()) {
1497+
if (refSet.isEmpty() && "*".equals(joinType) == false) {
14981498
throw new IllegalArgumentException(JSONRequest.KEY_JOIN + ":value 中 value 的 alias 值 " + alias + " 不合法!"
14991499
+ "必须为 &/Table0,</Table1/key1,@/Table1:alias2/key2,... 或 { '&/Table0':{}, '</Table1/key1':{},... } 这种格式!"
15001500
+ "且 Table:alias 的 alias 必须满足英文单词变量名格式!");

APIJSONORM/src/main/java/apijson/orm/AbstractSQLConfig.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4084,10 +4084,10 @@ else if (isClickHouse()) {
40844084
}
40854085

40864086
protected void onJoinNotRelation(String sql, String quote, Join j, String jt, List<On> onList, On on) {
4087-
// throw new UnsupportedOperationException("JOIN 已禁用 '!' 非逻辑连接符 !性能很差、需求极少,如要取消禁用可在后端重写相关方法!");
4087+
throw new UnsupportedOperationException("JOIN 已禁用 '!' 非逻辑连接符 !性能很差、需求极少,如要取消禁用可在后端重写相关方法!");
40884088
}
40894089
protected void onJoinComplextRelation(String sql, String quote, Join j, String jt, List<On> onList, On on) {
4090-
// throw new UnsupportedOperationException("JOIN 已禁用 $, ~, {}, <>, >, <, >=, <= 等复杂关联 !性能很差、需求极少,默认只允许等价关联,如要取消禁用可在后端重写相关方法!");
4090+
throw new UnsupportedOperationException("JOIN 已禁用 $, ~, {}, <>, >, <, >=, <= 等复杂关联 !性能很差、需求极少,默认只允许 = 等价关联,如要取消禁用可在后端重写相关方法!");
40914091
}
40924092
protected void onGetCrossJoinString(Join j) throws UnsupportedOperationException {
40934093
throw new UnsupportedOperationException("已禁用 * CROSS JOIN !性能很差、需求极少,如要取消禁用可在后端重写相关方法!");

0 commit comments

Comments
 (0)