Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
5.5(EOL), 10.0(EOL), 10.1(EOL), 10.2(EOL)
-
None
Description
Copying from DOUBLE to ENUM in INSERT..SELECT
DROP TABLE IF EXISTS t1,t2;
|
CREATE TABLE t1 (a ENUM('9e200','9e100'));
|
CREATE TABLE t2 (a DOUBLE);
|
INSERT INTO t2 VALUES ('9e100');
|
INSERT INTO t1 SELECT * FROM t2;
|
SELECT * FROM t1;
|
returns
+------+
|
| a |
|
+------+
|
| |
|
+------+
|
Copying from DOUBLE to ENUM in ALTER
DROP TABLE IF EXISTS t1;
|
CREATE TABLE t1 (a DOUBLE);
|
INSERT INTO t1 VALUES (9e100);
|
ALTER TABLE t1 MODIFY a ENUM('9e200','9e100');
|
SELECT *FROM t1;
|
returns
+-------+
|
| a |
|
+-------+
|
| 9e100 |
|
+-------+
|
Attachments
Issue Links
- blocks
-
MDEV-4912 Data type plugin API version 1
-
- Closed
-
The same problem is observed when copying from INT to ENUM.
DROP TABLE IF EXISTS t1,t2;
CREATE TABLE t1 (a ENUM('200','100'));
CREATE TABLE t2 (a DOUBLE);
INSERT INTO t2 VALUES ('100');
INSERT INTO t1 SELECT * FROM t2;
SELECT * FROM t1;
returns
+------+
| a |
+------+
| |
+------+
while
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES ('200');
ALTER TABLE t1 MODIFY a ENUM('200','100');
SELECT *FROM t1;
returns
+------+
| a |
+------+
| 200 |
+------+