8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-24 01:23:03 +01:00

Fixed CORE-2516 - Wrong processing SP parameters with arrays

This commit is contained in:
asfernandes 2009-06-19 15:47:16 +00:00
parent f11771cf2a
commit a01096b36b
2 changed files with 9 additions and 0 deletions

View File

@ -524,6 +524,7 @@ void DDL_resolve_intl_type2(CompiledStatement* statement,
{
if (fieldName == fld->fld_name)
{
field->fld_dimensions = fld->fld_dimensions;
field->fld_source = fld->fld_source;
field->fld_length = fld->fld_length;
field->fld_scale = fld->fld_scale;
@ -556,6 +557,13 @@ void DDL_resolve_intl_type2(CompiledStatement* statement,
post_607(Arg::Gds(isc_dsql_domain_not_found) << Arg::Str(field->fld_type_of_name));
}
}
if (field->fld_dimensions != 0)
{
ERRD_post(Arg::Gds(isc_wish_list) <<
Arg::Gds(isc_random) <<
Arg::Str("Usage of domain or TYPE OF COLUMN of array type in PSQL"));
}
}
if ((field->fld_dtype > dtype_any_text) && field->fld_dtype != dtype_blob)

View File

@ -734,6 +734,7 @@ bool METD_get_domain(dsql_req* request, dsql_fld* field, const char* name) // UT
field->fld_length = FLX.RDB$FIELD_LENGTH;
field->fld_scale = FLX.RDB$FIELD_SCALE;
field->fld_sub_type = FLX.RDB$FIELD_SUB_TYPE;
field->fld_dimensions = FLX.RDB$DIMENSIONS.NULL ? 0 : FLX.RDB$DIMENSIONS;
field->fld_character_set_id = 0;
if (!FLX.RDB$CHARACTER_SET_ID.NULL)