SELECT INTO OUTFILE and then LOAD DATA INFILE is inconsistent with special character
- Dominant language
- Go
- Stars
- 40.5k
- Forks
- 6.2k
- PR merge metrics
- PR metrics pending
Description
## Bug Report
Please answer these questions before submitting your issue. Thanks!
### 1. Minimal reproduce step (Required)
```sql
CREATE TABLE t1 (id INT AUTO_INCREMENT PRIMARY KEY,c1 VARCHAR(255));
CREATE TABLE t2 ( id INT, c2 VARCHAR(255));
INSERT INTO t1 (c1) VALUES ('r'), ('rr'), ('rrr'), ('rrrr');
SELECT * FROM t1;
SELECT * FROM t1 INTO OUTFILE '/tmp/t2.txt' FIELDS ENCLOSED BY 'r' ;
LOAD DATA LOCAL INFILE '/tmp/t2.txt' INTO TABLE t2 FIELDS ENCLOSED BY 'r';
select * from t2;
```
### 2. What did you expect to see? (Required)
```sql
mysql> CREATE TABLE t1 (id INT AUTO_INCREMENT PRIMARY KEY,c1 VARCHAR(255));
Query OK, 0 rows affected (0.02 sec)
mysql> CREATE TABLE t2 ( id INT, c2 VARCHAR(255));
Query OK, 0 rows affected (0.02 sec)
mysql> INSERT INTO t1 (c1) VALUES ('r'), ('rr'), ('rrr'), ('rrrr');
Query OK, 4 rows affected (0.00 sec)
Records: 4 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM t1;
+----+------+
| id | c1 |
+----+------+
| 1 | r |
| 2 | rr |
| 3 | rrr |
| 4 | rrrr |
+----+------+
4 rows in set (0.00 sec)
mysql> SELECT * FROM t1 INTO OUTFILE '/tmp/t1.txt' FIELDS ENCLOSED BY 'r' ;
Query OK, 4 rows affected (0.00 sec)
mysql> LOAD DATA LOCAL INFILE '/tmp/t1.txt' INTO TABLE t2 FIELDS ENCLOSED BY 'r';
Query OK, 4 rows affected (0.00 sec)
Records: 4 Deleted: 0 Skipped: 0 Warnings: 0
mysql> select * from t2;
+------+------+
| id | c2 |
+------+------+
| 1 | r |
| 2 | rr |
| 3 | rrr |
| 4 | rrrr |
+------+------+
4 rows in set (0.00 sec)
```
### 3. What did you see instead (Required)
```sql
mysql> CREATE TABLE t1 (id INT AUTO_INCREMENT PRIMARY KEY,c1 VARCHAR(255));
Query OK, 0 rows affected (0.06 sec)
mysql> CREATE TABLE t2 ( id INT, c2 VARCHAR(255));
Query OK, 0 rows affected (0.11 sec)
mysql> INSERT INTO t1 (c1) VALUES ('r'), ('rr'), ('rrr'), ('rrrr');
Query OK, 4 rows affected (0.00 sec)
Records: 4 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM t1;
+----+------+
| id | c1 |
+----+------+
| 1 | r |
| 2 | rr |
| 3 | rrr |
| 4 | rrrr |
+----+------+
4 rows in set (0.00 sec)
mysql> SELECT * FROM t1 INTO OUTFILE '/tmp/t2.txt' FIELDS ENCLOSED BY 'r' ;
Query OK, 4 rows affected (0.00 sec)
mysql> LOAD DATA LOCAL INFILE '/tmp/t2.txt' INTO TABLE t2 FIELDS ENCLOSED BY 'r';
Query OK, 4 rows affected (0.00 sec)
Records: 4 Deleted: 0 Skipped: 0 Warnings: 0
mysql> select * from t2;
+------+------+
| id | c2 |
+------+------+
|1 |
| 2 |
| 3 |
| 4 |
+------+------+
4 rows in set (0.00 sec)
```
### 4. What is your TiDB version? (Required)
```sql
| Release Version: v5.4.0
Edition: Community
Git Commit Hash: 55f3b24c1c9f506bd652ef1d162283541e428872
Git Branch: heads/refs/tags/v5.4.0
UTC Build Time: 2022-01-25 08:41:05
GoVersion: go1.16.4
Race Enabled: false
TiKV Min Version: v3.0.0-60965b006877ca7234adaced7890d7b029ed1306
Check Table Before Drop: false |
```
Contributor guide
Assessment
This issue has not been assessed yet.