File: loaddata.inc

package info (click to toggle)
mariadb-10.3 1%3A10.3.34-0%2Bdeb10u1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 531,600 kB
  • sloc: cpp: 1,415,326; ansic: 917,243; perl: 58,570; sh: 43,538; pascal: 39,206; java: 33,919; yacc: 32,096; javascript: 15,655; python: 10,576; ruby: 8,684; xml: 5,957; makefile: 4,893; sql: 3,750; asm: 841; lex: 670; php: 22; awk: 20; sed: 16
file content (117 lines) | stat: -rw-r--r-- 2,189 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
--source include/have_rocksdb.inc

# 
# Basic LOAD DATA statements
#

--disable_warnings
DROP TABLE IF EXISTS t1;
--enable_warnings

CREATE TABLE t1 (a INT, b CHAR(8), pk INT AUTO_INCREMENT PRIMARY KEY) ENGINE=rocksdb;

let $datadir = `SELECT @@datadir`;

--write_file $datadir/se_loaddata.dat
1,foo,
2,bar,
3,,
4,abc,
EOF

--replace_result $datadir <DATADIR>
eval
LOAD DATA INFILE '$datadir/se_loaddata.dat' INTO TABLE t1 
  FIELDS TERMINATED BY ',' (a,b);
--sorted_result
SELECT a,b FROM t1;

--replace_result $datadir <DATADIR>
eval
LOAD DATA LOCAL INFILE '$datadir/se_loaddata.dat' INTO TABLE t1
  CHARACTER SET utf8 COLUMNS TERMINATED BY ','
  ESCAPED BY '/' (a,b);
--sorted_result
SELECT a,b FROM t1;

--remove_file $datadir/se_loaddata.dat
--write_file $datadir/se_loaddata.dat
5;YYY;
102;'zzz';
0;'test';
EOF

--replace_result $datadir <DATADIR>
eval
LOAD DATA LOCAL INFILE '$datadir/se_loaddata.dat' INTO TABLE t1
  FIELDS TERMINATED BY ';'
  (a) SET b='loaded';

--sorted_result
SELECT a,b FROM t1;

--remove_file $datadir/se_loaddata.dat
--write_file $datadir/se_loaddata.dat
prefix:5;'foo';
prefix:6;'';
prefix:100;foo;
prefix:7;'test';suffix
101;abc;
102;'z';
prefix:0;;
EOF

--replace_result $datadir <DATADIR>
eval
LOAD DATA INFILE '$datadir/se_loaddata.dat' INTO TABLE t1
  FIELDS TERMINATED BY ';'
  OPTIONALLY ENCLOSED BY ''''
  LINES STARTING BY 'prefix:' 
  IGNORE 2 LINES (a,b);

--sorted_result
SELECT a,b FROM t1;

--remove_file $datadir/se_loaddata.dat
--write_file $datadir/se_loaddata.dat
1	foo
2	bar
3	
4	abc
EOF

--replace_result $datadir <DATADIR>
eval
LOAD DATA INFILE '$datadir/se_loaddata.dat' INTO TABLE t1;
--sorted_result
SELECT a,b FROM t1;
--remove_file $datadir/se_loaddata.dat


--write_file $datadir/se_replacedata.dat
1	aaa
2	bbb
3	ccc
4	ddd
EOF

--replace_result $datadir <DATADIR>
if ($skip_unique_check == 1)
{
  --error ER_ON_DUPLICATE_DISABLED
  eval
  LOAD DATA INFILE '$datadir/se_replacedata.dat' REPLACE INTO TABLE t1;
}
if ($skip_unique_check == 0)
{
  eval
  LOAD DATA INFILE '$datadir/se_replacedata.dat' REPLACE INTO TABLE t1;
}
--sorted_result
SELECT a,b FROM t1;
--remove_file $datadir/se_replacedata.dat


# Cleanup
DROP TABLE t1;