[to #52406314] fix serval PL/SQL bugs
This commit is contained in:
		| @ -709,11 +709,18 @@ int ObRawExprPrinter::print(ObOpRawExpr *expr) | ||||
|     case T_OBJ_ACCESS_REF: { | ||||
|       ObObjAccessRawExpr *obj_access_expr = static_cast<ObObjAccessRawExpr*>(expr); | ||||
|       bool parent_is_table = false; | ||||
|       for (int64_t i = 0; OB_SUCC(ret) && i < obj_access_expr->get_orig_access_idxs().count(); ++i) { | ||||
|         pl::ObObjAccessIdx ¤t_idx = obj_access_expr->get_orig_access_idxs().at(i); | ||||
|       ObIArray<pl::ObObjAccessIdx> &access_idxs = obj_access_expr->get_orig_access_idxs(); | ||||
|       int64_t start = access_idxs.count() - 1; | ||||
|       for (;start > 0; --start) { | ||||
|         if (OB_NOT_NULL(access_idxs.at(start).get_sysfunc_)) { | ||||
|           break; | ||||
|         } | ||||
|       } | ||||
|       for (int64_t i = start; OB_SUCC(ret) && i < access_idxs.count(); ++i) { | ||||
|         pl::ObObjAccessIdx ¤t_idx = access_idxs.at(i); | ||||
|         if (parent_is_table) { | ||||
|           DATA_PRINTF("("); | ||||
|         } else if (i > 0) { | ||||
|         } else if (i > start) { | ||||
|           DATA_PRINTF("."); | ||||
|         } | ||||
|         if (OB_NOT_NULL(current_idx.get_sysfunc_)) { | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 obdev
					obdev