From e288a7ad878f27d3249acba35cc5984906b9819a Mon Sep 17 00:00:00 2001 From: obdev Date: Fri, 14 Apr 2023 08:42:58 +0000 Subject: [PATCH] Fix insert core --- src/sql/resolver/dml/ob_del_upd_resolver.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/sql/resolver/dml/ob_del_upd_resolver.cpp b/src/sql/resolver/dml/ob_del_upd_resolver.cpp index d824ac1bd..5373f31b3 100644 --- a/src/sql/resolver/dml/ob_del_upd_resolver.cpp +++ b/src/sql/resolver/dml/ob_del_upd_resolver.cpp @@ -3035,8 +3035,9 @@ int ObDelUpdResolver::resolve_insert_values(const ParseNode *node, ObRawExpr *expr = NULL; ObRawExpr *tmp_expr = NULL; const ObColumnRefRawExpr *column_expr = NULL; - const ParseNode *value_node = NULL; - if (OB_ISNULL(value_node = vector_node->children_[value_idxs.at(j)]) + //for case: values(), read the first child + const ParseNode *value_node = (1 == vector_node->num_child_) ? vector_node->children_[0] : vector_node->children_[value_idxs.at(j)]; + if (OB_ISNULL(value_node) || OB_ISNULL(column_expr = table_info.values_desc_.at(j))) { ret = OB_ERR_UNEXPECTED; LOG_ERROR("inalid children node", K(j), K(vector_node));