mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
6ec3de5d2d
- Adding a new virtual method Field::load_data_set_no_data(). - Overriding Field_timestamp::load_data_set_no_data() and moving the TIMESTAMP specific code there. - Overriding Field_geom::load_data_set_no_data() and implementing GEOMETRY specific behavior, to prevent writing empty strings when the loaded file ends unexpectedly. This fixes the bug. - Adding a new test gis-loaddaata.test. - The test in loaddata.test for CHAR was added simply to record behavior. The CHAR data type did not change its behaviour (only GEOMRYRY did). - Additionally, moving duplicate code into a new method Field::load_data_set_value() and reusing it in three places.
21 lines
685 B
Text
21 lines
685 B
Text
--echo #
|
|
--echo # MDEV-15497 Wrong empty value in a GEOMETRY column on LOAD DATA
|
|
--echo #
|
|
|
|
SET sql_mode='';
|
|
|
|
CREATE TABLE t1 (id INT, a GEOMETRY NOT NULL);
|
|
--error ER_WARN_NULL_TO_NOTNULL
|
|
LOAD DATA INFILE '../../std_data/loaddata/mdev-15497.txt' INTO TABLE t1;
|
|
--error ER_WARN_NULL_TO_NOTNULL
|
|
LOAD DATA INFILE '../../std_data/loaddata/mdev-15497.txt' INTO TABLE t1 FIELDS TERMINATED BY '';
|
|
DROP TABLE t1;
|
|
|
|
|
|
CREATE TABLE t1 (id INT, a GEOMETRY);
|
|
LOAD DATA INFILE '../../std_data/loaddata/mdev-15497.txt' INTO TABLE t1;
|
|
SELECT * FROM t1;
|
|
TRUNCATE TABLE t1;
|
|
LOAD DATA INFILE '../../std_data/loaddata/mdev-15497.txt' INTO TABLE t1 FIELDS TERMINATED BY '';
|
|
SELECT * FROM t1;
|
|
DROP TABLE t1;
|