diff --git a/storage/connect/mysql-test/connect/r/alter_xml2.result b/storage/connect/mysql-test/connect/r/alter_xml2.result index 6622f0d670e4927e08e7253033226207dc4f60b7..d8cdcfb2439f018c81c56206dbacb7ad78c395fb 100644 --- a/storage/connect/mysql-test/connect/r/alter_xml2.result +++ b/storage/connect/mysql-test/connect/r/alter_xml2.result @@ -1,86 +1,86 @@ -Warnings: -Warning 1105 No file name. Table will use t1.xml -# -# Testing changing table type (not in-place) -# -CREATE TABLE t1 (c INT NOT NULL, d CHAR(10) NOT NULL) ENGINE=CONNECT TABLE_TYPE=CSV HEADER=1 QUOTED=1; -Warnings: -Warning 1105 No file name. Table will use t1.csv -INSERT INTO t1 VALUES (1,'One'), (2,'Two'), (3,'Three'); -SELECT * FROM t1; -c d -1 One -2 Two -3 Three -# This would fail if the top node name is not specified. -# This is because the XML top node name defaults to the table name. -# Sure enough the temporary table name begins with '#' and is rejected by XML. -# Therefore the top node name must be specified (along with the row nodes name). -ALTER TABLE t1 TABLE_TYPE=XML TABNAME=t1 OPTION_LIST='xmlsup=libxml2,rownode=row'; -SELECT * FROM t1; -c d -1 One -2 Two -3 Three -SHOW CREATE TABLE t1; -Table Create Table -t1 CREATE TABLE `t1` ( - `c` int(11) NOT NULL, - `d` char(10) NOT NULL -) ENGINE=CONNECT DEFAULT CHARSET=latin1 `HEADER`=1 `QUOTED`=1 `TABLE_TYPE`=XML `TABNAME`=t1 `OPTION_LIST`='xmlsup=libxml2,rownode=row' -# Let us see the XML file -CREATE TABLE t2 (line VARCHAR(100) NOT NULL) ENGINE=CONNECT FILE_NAME='t1.xml'; -Warnings: -Warning 1105 No table_type. Will be set to DOS -SELECT * FROM t2; -line -<?xml version="1.0" encoding="UTF-8"?> -<!-- Created by the MariaDB CONNECT Storage Engine--> -<t1> - <row> - <TH>c</TH> - <TH>d</TH> - </row> - <row> - <c>1</c> - <d>One</d> - </row> - <row> - <c>2</c> - <d>Two</d> - </row> - <row> - <c>3</c> - <d>Three</d> - </row> -</t1> -# NOTE: The first (ignored) row is due to the remaining HEADER=1 option. -# Testing field option modification -ALTER TABLE t1 MODIFY d CHAR(10) NOT NULL FIELD_FORMAT='@', HEADER=0; -SELECT * FROM t1; -c d -1 One -2 Two -3 Three -SHOW CREATE TABLE t1; -Table Create Table -t1 CREATE TABLE `t1` ( - `c` int(11) NOT NULL, - `d` char(10) NOT NULL `FIELD_FORMAT`='@' -) ENGINE=CONNECT DEFAULT CHARSET=latin1 `QUOTED`=1 `TABLE_TYPE`=XML `TABNAME`=t1 `OPTION_LIST`='xmlsup=libxml2,rownode=row' `HEADER`=0 -SELECT * FROM t2; -line -<?xml version="1.0" encoding="UTF-8"?> -<!-- Created by the MariaDB CONNECT Storage Engine--> -<t1> - <row d="One"> - <c>1</c> - </row> - <row d="Two"> - <c>2</c> - </row> - <row d="Three"> - <c>3</c> - </row> -</t1> -DROP TABLE t1, t2; +Warnings: +Warning 1105 No file name. Table will use t1.xml +# +# Testing changing table type (not in-place) +# +CREATE TABLE t1 (c INT NOT NULL, d CHAR(10) NOT NULL) ENGINE=CONNECT TABLE_TYPE=CSV HEADER=1 QUOTED=1; +Warnings: +Warning 1105 No file name. Table will use t1.csv +INSERT INTO t1 VALUES (1,'One'), (2,'Two'), (3,'Three'); +SELECT * FROM t1; +c d +1 One +2 Two +3 Three +# This would fail if the top node name is not specified. +# This is because the XML top node name defaults to the table name. +# Sure enough the temporary table name begins with '#' and is rejected by XML. +# Therefore the top node name must be specified (along with the row nodes name). +ALTER TABLE t1 TABLE_TYPE=XML TABNAME=t1 OPTION_LIST='xmlsup=libxml2,rownode=row'; +SELECT * FROM t1; +c d +1 One +2 Two +3 Three +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `c` int(11) NOT NULL, + `d` char(10) NOT NULL +) ENGINE=CONNECT DEFAULT CHARSET=latin1 `HEADER`=1 `QUOTED`=1 `TABLE_TYPE`=XML `TABNAME`=t1 `OPTION_LIST`='xmlsup=libxml2,rownode=row' +# Let us see the XML file +CREATE TABLE t2 (line VARCHAR(100) NOT NULL) ENGINE=CONNECT FILE_NAME='t1.xml'; +Warnings: +Warning 1105 No table_type. Will be set to DOS +SELECT * FROM t2; +line +<?xml version="1.0" encoding="UTF-8"?> +<!-- Created by the MariaDB CONNECT Storage Engine--> +<t1> + <row> + <TH>c</TH> + <TH>d</TH> + </row> + <row> + <c>1</c> + <d>One</d> + </row> + <row> + <c>2</c> + <d>Two</d> + </row> + <row> + <c>3</c> + <d>Three</d> + </row> +</t1> +# NOTE: The first (ignored) row is due to the remaining HEADER=1 option. +# Testing field option modification +ALTER TABLE t1 MODIFY d CHAR(10) NOT NULL FIELD_FORMAT='@', HEADER=0; +SELECT * FROM t1; +c d +1 One +2 Two +3 Three +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `c` int(11) NOT NULL, + `d` char(10) NOT NULL `FIELD_FORMAT`='@' +) ENGINE=CONNECT DEFAULT CHARSET=latin1 `QUOTED`=1 `TABLE_TYPE`=XML `TABNAME`=t1 `OPTION_LIST`='xmlsup=libxml2,rownode=row' `HEADER`=0 +SELECT * FROM t2; +line +<?xml version="1.0" encoding="UTF-8"?> +<!-- Created by the MariaDB CONNECT Storage Engine--> +<t1> + <row d="One"> + <c>1</c> + </row> + <row d="Two"> + <c>2</c> + </row> + <row d="Three"> + <c>3</c> + </row> +</t1> +DROP TABLE t1, t2; diff --git a/storage/connect/mysql-test/connect/r/infoschema2-9739.result b/storage/connect/mysql-test/connect/r/infoschema2-9739.result index 2f3888ac91b3d329f30dda32898bc6723b771c92..9c4089b30c69c51832c2f12ef7f4ef51348495bd 100644 --- a/storage/connect/mysql-test/connect/r/infoschema2-9739.result +++ b/storage/connect/mysql-test/connect/r/infoschema2-9739.result @@ -1,12 +1,12 @@ -Warnings: -Warning 1105 No file name. Table will use t1.xml -create table t1 (i int) engine=Connect table_type=XML option_list='xmlsup=libxml2'; -Warnings: -Warning 1105 No file name. Table will use t1.xml -select * from information_schema.tables where create_options like '%table_type=XML%'; -TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT -Warnings: -Warning 1286 Unknown storage engine 'InnoDB' -Warning 1286 Unknown storage engine 'InnoDB' -Warning 1296 Got error 174 'File t1.xml not found' from CONNECT -drop table t1; +Warnings: +Warning 1105 No file name. Table will use t1.xml +create table t1 (i int) engine=Connect table_type=XML option_list='xmlsup=libxml2'; +Warnings: +Warning 1105 No file name. Table will use t1.xml +select * from information_schema.tables where create_options like '%table_type=XML%'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT +Warnings: +Warning 1286 Unknown storage engine 'InnoDB' +Warning 1286 Unknown storage engine 'InnoDB' +Warning 1296 Got error 174 'File t1.xml not found' from CONNECT +drop table t1; diff --git a/storage/connect/mysql-test/connect/r/xml2_mdev5261.result b/storage/connect/mysql-test/connect/r/xml2_mdev5261.result index 3d67edd34aba399fe07164562ade41046a458502..79905a5f3989c8066db4860a4ce3709658aa53ab 100644 --- a/storage/connect/mysql-test/connect/r/xml2_mdev5261.result +++ b/storage/connect/mysql-test/connect/r/xml2_mdev5261.result @@ -1,25 +1,25 @@ Warnings: -Warning 1105 No file name. Table will use t1.xml +Warning 1105 No file name. Table will use t1.xml SET NAMES utf8; CREATE TABLE t1 (i INT UNIQUE NOT NULL) ENGINE=CONNECT TABLE_TYPE=XML FILE_NAME='xt1.xml' OPTION_LIST='Rownode=N'; ERROR HY000: Table type XML is not indexable CREATE TABLE t1 (i INT NOT NULL) ENGINE=CONNECT TABLE_TYPE=XML FILE_NAME='xt1.xml' OPTION_LIST='Rownode=N'; DESCRIBE t1; -Field Type Null Key Default Extra -i int(11) NO NULL +Field Type Null Key Default Extra +i int(11) NO NULL ALTER TABLE t1 ADD UNIQUE(i); ERROR HY000: Table type XML is not indexable CREATE UNIQUE INDEX i ON t1(i); ERROR HY000: Table type XML is not indexable DESCRIBE t1; -Field Type Null Key Default Extra -i int(11) NO NULL +Field Type Null Key Default Extra +i int(11) NO NULL INSERT INTO t1 VALUES(2),(5),(7); SELECT * FROM t1 WHERE i = 5; i 5 ALTER TABLE t1 DROP INDEX i; -ERROR 42000: Can't DROP 'i'; check that column/key exists +ERROR 42000: Can't DROP INDEX `i`; check that it exists DROP INDEX i ON t1; -ERROR 42000: Can't DROP 'i'; check that column/key exists +ERROR 42000: Can't DROP INDEX `i`; check that it exists DROP TABLE t1;