diff --git a/src/sql/engine/expr/ob_expr.cpp b/src/sql/engine/expr/ob_expr.cpp index df6adfca74..55020c764e 100644 --- a/src/sql/engine/expr/ob_expr.cpp +++ b/src/sql/engine/expr/ob_expr.cpp @@ -785,7 +785,7 @@ int eval_assign_question_mark_func(const ObExpr &expr, ObEvalCtx &ctx, ObDatum & cast_mode = lib::is_oracle_mode() ? (cast_mode | CM_CHARSET_CONVERT_IGNORE_ERR) : (cast_mode | CM_COLUMN_CONVERT); if (ctx.exec_ctx_.get_physical_plan_ctx()->is_ignore_stmt()) { - cast_mode = cast_mode | CM_WARN_ON_FAIL; + cast_mode = cast_mode | CM_WARN_ON_FAIL | CM_CHARSET_CONVERT_IGNORE_ERR; } ObCastCtx cast_ctx(&allocator, &dtc_params, cast_mode, dst_meta.get_collation_type()); if (OB_FAIL(ObObjCaster::to_type(dst_meta.get_type(), cast_ctx, v, dst_obj))) {