mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-23 04:43:03 +01:00
Fixed CORE-3353: Predicate (blob_field LIKE ?) describes the parameter as VARCHAR(30) rather than as BLOB.
Also, let's never transfer the CS_dynamic pseudo-charset to the client side.
This commit is contained in:
parent
735e2f0629
commit
8ac7178cc0
@ -10211,7 +10211,7 @@ static bool set_parameter_type(dsql_req* request, dsql_nod* in_node, dsql_nod* n
|
||||
|
||||
parameter->par_desc.dsc_length += sizeof(USHORT);
|
||||
}
|
||||
else if (parameter->par_desc.dsc_dtype > dtype_any_text) {
|
||||
else if (!parameter->par_desc.isText() && !parameter->par_desc.isBlob()) {
|
||||
// The LIKE & similar parameters must be varchar type
|
||||
// strings - so force this parameter to be varchar
|
||||
// and take a guess at a good length for it.
|
||||
@ -10219,7 +10219,7 @@ static bool set_parameter_type(dsql_req* request, dsql_nod* in_node, dsql_nod* n
|
||||
parameter->par_desc.dsc_length = LIKE_PARAM_LEN + sizeof(USHORT);
|
||||
parameter->par_desc.dsc_sub_type = 0;
|
||||
parameter->par_desc.dsc_scale = 0;
|
||||
parameter->par_desc.dsc_ttype() = ttype_dynamic;
|
||||
parameter->par_desc.setTextType(request->req_dbb->dbb_att_charset);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
|
Loading…
Reference in New Issue
Block a user