You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Blob subtype and charset absent for COMPUTED-BY column when it is based on another computed-by blob field but declared with explicit specifying of its own datatype (i.e. 'BLOB' ) [CORE5095]
#5380
shell del C:\MIX\firebird\QA\fbt-repo\tmp\test.fdb 2>nul;
set names utf8;
create database '/:C:\MIX\firebird\QA\fbt-repo\tmp\test.fdb' default character set utf8;
recreate table t1 (
n0 int
,blob_fld_w1252
blob
character set win1252
,c_implicit_type_of_blob_field
computed by ( blob_fld_w1252 )
,c_explicit_blob_on_blob_field
blob ------------------------------------------------------------------------------------------------------ [ 1 ]
computed by ( blob_fld_w1252 )
,c_transitive_on_implicit_type
computed by ( c_implicit_type_of_blob_field )
,c_transitive_on_explicit_blob ----------------------------------------------------------------------- [ 2 ]
computed by ( c_explicit_blob_on_blob_field )
);
insert into t1 values(null,'ä');
commit;
set sqlda_display on;
set blob all;
set list on;
select * from t1;
Lines marked in DDL by [1] and [2] corresponds to [A] and [B] in the output.
When definition of COMPUTED-BY field contains explicit specification of its type (keyword "BLOB") then such field charset and sub_type disappears from SQLDA_DISPLAY output. The same will be when computed-by field is based on computed-by which, in turn, is declared with explicit "BLOB" keyword in its own DDL.
Checked on: WI-V3.0.0.32306.
The text was updated successfully, but these errors were encountered:
Submitted by: @pavel-zotov
Test:
####
shell del C:\MIX\firebird\QA\fbt-repo\tmp\test.fdb 2>nul;
set names utf8;
create database '/:C:\MIX\firebird\QA\fbt-repo\tmp\test.fdb' default character set utf8;
recreate table t1 (
n0 int
,blob_fld_w1252
blob
character set win1252
,c_implicit_type_of_blob_field
computed by ( blob_fld_w1252 )
,c_explicit_blob_on_blob_field
blob ------------------------------------------------------------------------------------------------------ [ 1 ]
computed by ( blob_fld_w1252 )
,c_transitive_on_implicit_type
computed by ( c_implicit_type_of_blob_field )
,c_transitive_on_explicit_blob ----------------------------------------------------------------------- [ 2 ]
computed by ( c_explicit_blob_on_blob_field )
);
insert into t1 values(null,'ä');
commit;
set sqlda_display on;
set blob all;
set list on;
select * from t1;
Run:
####
isql -q -i test.sql 1>test.log & isql -x /:C:\MIX\firebird\QA\fbt-repo\tmp\test.fdb >meta.log
Content of 'test.log':
###############
INPUT message field count: 0
OUTPUT message field count: 6
01: sqltype: 496 LONG Nullable scale: 0 subtype: 0 len: 4
: name: N0 alias: N0
: table: T1 owner: SYSDBA
02: sqltype: 520 BLOB Nullable scale: 0 subtype: 1 len: 8 charset: 4 UTF8
: name: BLOB_FLD_W1252 alias: BLOB_FLD_W1252
: table: T1 owner: SYSDBA
03: sqltype: 520 BLOB Nullable scale: 0 subtype: 1 len: 8 charset: 4 UTF8
: name: C_IMPLICIT_TYPE_OF_BLOB_FIELD alias: C_IMPLICIT_TYPE_OF_BLOB_FIELD
: table: T1 owner: SYSDBA
04: sqltype: 520 BLOB Nullable scale: 0 subtype: 0 len: 8 ------------------------------------------------------------------------------------------------------ [ A ]
: name: C_EXPLICIT_BLOB_ON_BLOB_FIELD alias: C_EXPLICIT_BLOB_ON_BLOB_FIELD
: table: T1 owner: SYSDBA
05: sqltype: 520 BLOB Nullable scale: 0 subtype: 1 len: 8 charset: 4 UTF8
: name: C_TRANSITIVE_ON_IMPLICIT_TYPE alias: C_TRANSITIVE_ON_IMPLICIT_TYPE
: table: T1 owner: SYSDBA
06: sqltype: 520 BLOB Nullable scale: 0 subtype: 0 len: 8 ------------------------------------------------------------------------------------------------------ [ B ]
: name: C_TRANSITIVE_ON_EXPLICIT_BLOB alias: C_TRANSITIVE_ON_EXPLICIT_BLOB
: table: T1 owner: SYSDBA
N0 <null>
BLOB_FLD_W1252 0:9
ä
C_IMPLICIT_TYPE_OF_BLOB_FIELD 0:6
ä
C_EXPLICIT_BLOB_ON_BLOB_FIELD 80:0
ä
C_TRANSITIVE_ON_IMPLICIT_TYPE 0:3
ä
C_TRANSITIVE_ON_EXPLICIT_BLOB 80:0
ä
Lines marked in DDL by [1] and [2] corresponds to [A] and [B] in the output.
When definition of COMPUTED-BY field contains explicit specification of its type (keyword "BLOB") then such field charset and sub_type disappears from SQLDA_DISPLAY output. The same will be when computed-by field is based on computed-by which, in turn, is declared with explicit "BLOB" keyword in its own DDL.
Checked on: WI-V3.0.0.32306.
The text was updated successfully, but these errors were encountered: