loadxml.result 2.74 KB
Newer Older
1
2
3
4
5
6
7
drop table if exists t1, t2;
create table t1 (a int, b varchar(64));
-- Load a static XML file
load xml infile '../../std_data/loadxml.dat' into table t1
rows identified by '<row>';
select * from t1 order by a;
a	b
8
9
10
11
1	 b1
2	  b2
3	   b3
11	           b11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
111	b111
112	b112 & < > " ' &unknown; -- check entities
212	b212
213	b213
214	b214
215	b215
216	&bb b;
delete from t1;
-- Load a static XML file with 'IGNORE num ROWS'
load xml infile '../../std_data/loadxml.dat' into table t1
rows identified by '<row>' ignore 4 rows;
select * from t1 order by a;
a	b
111	b111
112	b112 & < > " ' &unknown; -- check entities
212	b212
213	b213
214	b214
215	b215
216	&bb b;
-- Check 'mysqldump --xml' + 'LOAD XML' round trip
delete from t1;
load xml infile 'MYSQLTEST_VARDIR/tmp/loadxml-dump.xml' into table t1 rows identified by '<row>';;
select * from t1 order by a;
a	b
111	b111
112	b112 & < > " ' &unknown; -- check entities
212	b212
213	b213
214	b214
215	b215
216	&bb b;
--Check that default row tag is '<row>
delete from t1;
load xml infile 'MYSQLTEST_VARDIR/tmp/loadxml-dump.xml' into table t1;;
select * from t1 order by a;
a	b
111	b111
112	b112 & < > " ' &unknown; -- check entities
212	b212
213	b213
214	b214
215	b215
216	&bb b;
-- Check that 'xml' is not a keyword
select 1 as xml;
xml
1
create table t2(fl text);
LOAD XML LOCAL INFILE "MYSQLTEST_VARDIR/tmp/loadxml-dump.xml"  INTO TABLE t2 ROWS IDENTIFIED BY '<person>';;
drop table t1;
drop table t2;
create table t1 (
id int(11) not null,
text text,
primary key (id)
) engine=MyISAM default charset=latin1;
load xml infile '../../std_data/loadxml2.dat' into table t1;
select * from t1;
id	text
1	line1
line2
line3
drop table t1;
#
# Bug#51571 load xml infile causes server crash
#
CREATE TABLE t1 (a text, b text);
LOAD XML INFILE '../../std_data/loadxml.dat' INTO TABLE t1
ROWS IDENTIFIED BY '<row>' (a,@b) SET b=concat('!',@b);
SELECT * FROM t1 ORDER BY a;
a	b
84
85
1	! b1
11	!           b11
86
87
111	!b111
112	!b112 & < > " ' &unknown; -- check entities
88
2	!  b2
89
90
91
92
93
212	!b212
213	!b213
214	!b214
215	!b215
216	!&bb b;
94
3	!   b3
95
DROP TABLE t1;
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#
# Bug#16171518 LOAD XML DOES NOT HANDLE EMPTY ELEMENTS
#
CREATE TABLE t1 (col1 VARCHAR(3), col2 VARCHAR(3), col3 VARCHAR(3), col4 VARCHAR(4));
LOAD XML INFILE '../../std_data/bug16171518_1.dat' INTO TABLE t1;
SELECT * FROM t1 ORDER BY col1, col2, col3, col4;
col1	col2	col3	col4
0bc	def	ghi	jkl
1no	NULL	pqr	stu
2BC	DEF	GHI	JKL
3NO	NULL	PQR	STU
4bc	def	ghi	jkl
5no	pqr	stu	vwx
6BC	DEF	NULL	JKL
7NO	PQR	STU	VWX
8bc	def	ghi	NULL
9kl	NULL	mno	pqr
ABC	DEF	NULL	JKL
MNO	NULL	STU	VWX
DROP TABLE t1;
CREATE TABLE t1 (col1 VARCHAR(3), col2 VARCHAR(3), col3 INTEGER);
LOAD XML INFILE '../../std_data/bug16171518_2.dat' INTO TABLE t1;
SELECT * FROM t1 ORDER BY col1, col2, col3;
col1	col2	col3
ABC	DEF	NULL
GHI	NULL	123
DROP TABLE t1;