Fix error when call stmt containing question mark
This commit is contained in:
@ -473,7 +473,8 @@ int ObCallProcedureResolver::resolve(const ParseNode &parse_tree)
|
||||
const ObRawExpr* param = params.at(i);
|
||||
if (lib::is_mysql_mode()
|
||||
&& param->get_expr_type() != T_OP_GET_USER_VAR
|
||||
&& param->get_expr_type() != T_OP_GET_SYS_VAR) {
|
||||
&& param->get_expr_type() != T_OP_GET_SYS_VAR
|
||||
&& param->get_expr_type() != T_QUESTIONMARK) {
|
||||
ret = OB_ER_SP_NOT_VAR_ARG;
|
||||
LOG_USER_ERROR(OB_ER_SP_NOT_VAR_ARG, static_cast<int32_t>(i), static_cast<int32_t>(sp_name.length()), sp_name.ptr());
|
||||
LOG_WARN("OUT or INOUT argument for routine is not a variable", K(param->get_expr_type()), K(ret));
|
||||
|
||||
Reference in New Issue
Block a user