Loading mysql-test/r/type_binary.result +9 −0 Original line number Diff line number Diff line Loading @@ -136,4 +136,13 @@ insert into t1 values(NULL, 0x412020); ERROR 22001: Data too long for column 'vb' at row 1 drop table t1; set @@sql_mode= @old_sql_mode; create table t1(f1 int, f2 binary(2) not null, f3 char(2) not null); insert into t1 set f1=1; Warnings: Warning 1364 Field 'f2' doesn't have a default value Warning 1364 Field 'f3' doesn't have a default value select hex(f2), hex(f3) from t1; hex(f2) hex(f3) 0000 drop table t1; End of 5.0 tests mysql-test/t/type_binary.test +8 −0 Original line number Diff line number Diff line Loading @@ -91,4 +91,12 @@ insert into t1 values(NULL, 0x412020); drop table t1; set @@sql_mode= @old_sql_mode; # # Bug#14171: Wrong default value for a BINARY field # create table t1(f1 int, f2 binary(2) not null, f3 char(2) not null); insert into t1 set f1=1; select hex(f2), hex(f3) from t1; drop table t1; --echo End of 5.0 tests sql/field.h +2 −1 Original line number Diff line number Diff line Loading @@ -1034,7 +1034,8 @@ class Field_string :public Field_longstr { bool zero_pack() const { return 0; } int reset(void) { charset()->cset->fill(charset(),ptr,field_length,' '); charset()->cset->fill(charset(),ptr,field_length, (has_charset() ? ' ' : 0)); return 0; } int store(const char *to,uint length,CHARSET_INFO *charset); Loading Loading
mysql-test/r/type_binary.result +9 −0 Original line number Diff line number Diff line Loading @@ -136,4 +136,13 @@ insert into t1 values(NULL, 0x412020); ERROR 22001: Data too long for column 'vb' at row 1 drop table t1; set @@sql_mode= @old_sql_mode; create table t1(f1 int, f2 binary(2) not null, f3 char(2) not null); insert into t1 set f1=1; Warnings: Warning 1364 Field 'f2' doesn't have a default value Warning 1364 Field 'f3' doesn't have a default value select hex(f2), hex(f3) from t1; hex(f2) hex(f3) 0000 drop table t1; End of 5.0 tests
mysql-test/t/type_binary.test +8 −0 Original line number Diff line number Diff line Loading @@ -91,4 +91,12 @@ insert into t1 values(NULL, 0x412020); drop table t1; set @@sql_mode= @old_sql_mode; # # Bug#14171: Wrong default value for a BINARY field # create table t1(f1 int, f2 binary(2) not null, f3 char(2) not null); insert into t1 set f1=1; select hex(f2), hex(f3) from t1; drop table t1; --echo End of 5.0 tests
sql/field.h +2 −1 Original line number Diff line number Diff line Loading @@ -1034,7 +1034,8 @@ class Field_string :public Field_longstr { bool zero_pack() const { return 0; } int reset(void) { charset()->cset->fill(charset(),ptr,field_length,' '); charset()->cset->fill(charset(),ptr,field_length, (has_charset() ? ' ' : 0)); return 0; } int store(const char *to,uint length,CHARSET_INFO *charset); Loading