Loading mysql-test/r/gis.result +16 −16 Original line number Diff line number Diff line Loading @@ -673,6 +673,22 @@ POINT(10 10) select (asWKT(geomfromwkb((0x010100000000000000000024400000000000002440)))); (asWKT(geomfromwkb((0x010100000000000000000024400000000000002440)))) POINT(10 10) create table t1 (g GEOMETRY); select * from t1; Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr def test t1 t1 g g 255 4294967295 0 Y 144 0 63 g select asbinary(g) from t1; Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr def asbinary(g) 252 8192 0 Y 128 0 63 asbinary(g) drop table t1; create table t1 (a TEXT, b GEOMETRY NOT NULL, SPATIAL KEY(b)); alter table t1 disable keys; load data infile '../../std_data/bad_gis_data.dat' into table t1; ERROR 22004: Column was set to data type implicit default; NULL supplied for NOT NULL column 'b' at row 1 alter table t1 enable keys; drop table t1; create table t1 (s1 geometry not null,s2 char(100)); create trigger t1_bu before update on t1 for each row set new.s1 = null; insert into t1 values (null,null); Loading @@ -696,22 +712,6 @@ alter table t1 add primary key pti(pt); ERROR 42000: BLOB/TEXT column 'pt' used in key specification without a key length alter table t1 add primary key pti(pt(20)); drop table t1; create table t1 (g GEOMETRY); select * from t1; Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr def test t1 t1 g g 255 4294967295 0 Y 144 0 63 g select asbinary(g) from t1; Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr def asbinary(g) 252 8192 0 Y 128 0 63 asbinary(g) drop table t1; create table t1 (a TEXT, b GEOMETRY NOT NULL, SPATIAL KEY(b)); alter table t1 disable keys; load data infile '../../std_data/bad_gis_data.dat' into table t1; ERROR 01000: Data truncated; NULL supplied to NOT NULL column 'b' at row 1 alter table t1 enable keys; drop table t1; create table t1 select GeomFromText('point(1 1)'); desc t1; Field Type Null Key Default Extra Loading sql/field.cc +2 −1 Original line number Diff line number Diff line Loading @@ -2218,9 +2218,10 @@ Field_new_decimal::Field_new_decimal(uint32 len_arg, } void Field_new_decimal::reset(void) int Field_new_decimal::reset(void) { store_value(&decimal_zero); return 0; } Loading sql/sql_load.cc +1 −1 Original line number Diff line number Diff line Loading @@ -753,7 +753,7 @@ read_sep_field(THD *thd, COPY_INFO &info, TABLE_LIST *table_list, Field *field= ((Item_field *)item)->field; if (field->reset()) { my_error(ER_WARN_NULL_TO_NOTNULL, MYF(0),sql_field->field->field_name, my_error(ER_WARN_NULL_TO_NOTNULL, MYF(0),field->field_name, thd->row_count); DBUG_RETURN(1); } Loading Loading
mysql-test/r/gis.result +16 −16 Original line number Diff line number Diff line Loading @@ -673,6 +673,22 @@ POINT(10 10) select (asWKT(geomfromwkb((0x010100000000000000000024400000000000002440)))); (asWKT(geomfromwkb((0x010100000000000000000024400000000000002440)))) POINT(10 10) create table t1 (g GEOMETRY); select * from t1; Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr def test t1 t1 g g 255 4294967295 0 Y 144 0 63 g select asbinary(g) from t1; Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr def asbinary(g) 252 8192 0 Y 128 0 63 asbinary(g) drop table t1; create table t1 (a TEXT, b GEOMETRY NOT NULL, SPATIAL KEY(b)); alter table t1 disable keys; load data infile '../../std_data/bad_gis_data.dat' into table t1; ERROR 22004: Column was set to data type implicit default; NULL supplied for NOT NULL column 'b' at row 1 alter table t1 enable keys; drop table t1; create table t1 (s1 geometry not null,s2 char(100)); create trigger t1_bu before update on t1 for each row set new.s1 = null; insert into t1 values (null,null); Loading @@ -696,22 +712,6 @@ alter table t1 add primary key pti(pt); ERROR 42000: BLOB/TEXT column 'pt' used in key specification without a key length alter table t1 add primary key pti(pt(20)); drop table t1; create table t1 (g GEOMETRY); select * from t1; Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr def test t1 t1 g g 255 4294967295 0 Y 144 0 63 g select asbinary(g) from t1; Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr def asbinary(g) 252 8192 0 Y 128 0 63 asbinary(g) drop table t1; create table t1 (a TEXT, b GEOMETRY NOT NULL, SPATIAL KEY(b)); alter table t1 disable keys; load data infile '../../std_data/bad_gis_data.dat' into table t1; ERROR 01000: Data truncated; NULL supplied to NOT NULL column 'b' at row 1 alter table t1 enable keys; drop table t1; create table t1 select GeomFromText('point(1 1)'); desc t1; Field Type Null Key Default Extra Loading
sql/field.cc +2 −1 Original line number Diff line number Diff line Loading @@ -2218,9 +2218,10 @@ Field_new_decimal::Field_new_decimal(uint32 len_arg, } void Field_new_decimal::reset(void) int Field_new_decimal::reset(void) { store_value(&decimal_zero); return 0; } Loading
sql/sql_load.cc +1 −1 Original line number Diff line number Diff line Loading @@ -753,7 +753,7 @@ read_sep_field(THD *thd, COPY_INFO &info, TABLE_LIST *table_list, Field *field= ((Item_field *)item)->field; if (field->reset()) { my_error(ER_WARN_NULL_TO_NOTNULL, MYF(0),sql_field->field->field_name, my_error(ER_WARN_NULL_TO_NOTNULL, MYF(0),field->field_name, thd->row_count); DBUG_RETURN(1); } Loading