Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.0.10
-
None
Description
After creating a table with a connection string, if ALTER TABLE is used, the connection string is lost. For instance:
CREATE TABLE t1 ENGINE=CONNECT TABLE_TYPE=ODBC tabname='lite' CONNECTION='Driver=SQLite3 ODBC Driver;Database=test.sqlite3;NoWCHAR=yes' CHARSET=utf8 DATA_CHARSET=utf8; |
 |
SHOW CREATE TABLE t1; |
CREATE TABLE `t1` ( |
`ID` int(9) DEFAULT NULL, |
`nom` varchar(12) NOT NULL, |
`nais` datetime DEFAULT NULL, |
`rem` varchar(32) DEFAULT NULL |
) ENGINE=CONNECT DEFAULT CHARSET=utf8 CONNECTION='Driver=SQLite3 ODBC Driver;Database=test.sqlite3;NoWCHAR=yes' `TABLE_TYPE`='ODBC' `TABNAME`='lite' `DATA_CHARSET`='utf8' |
Now if I do:
ALTER TABLE t1 MODIFY COLUMN nom VARCHAR(13) NOT NULL; |
SHOW CREATE TABLE t1; |
CREATE TABLE `t1` ( |
`ID` int(9) DEFAULT NULL, |
`nom` varchar(13) NOT NULL, |
`nais` datetime DEFAULT NULL, |
`rem` varchar(32) DEFAULT NULL |
) ENGINE=CONNECT DEFAULT CHARSET=utf8 `TABLE_TYPE`='ODBC' `TABNAME`='lite' `DATA_CHARSET`='utf8'; |
This has not been reported before CONNECT was implemented because the only other engine using connection string was FEDERATED(X) that does not support ALTER TABLE.