Description:
According to http://en.wikipedia.org/wiki/Comma-separated_values#Basic_rules_and_examples comma (,) in the value in CSV format must be quoted with " and quote (") in quoted value must be doubled:
"
Fields with embedded commas must be quoted.
1997,Ford,E350,"Super, luxurious truck"
Each of the embedded double-quote characters must be represented by a pair of double-quote characters.
1997,Ford,E350,"Super, ""luxurious"" truck"
"
So, value like this:
"a"",b" in CSV file should be interpreted as a",b after loading. Check also http://en.wikipedia.org/wiki/Comma-separated_values#Example later on that page that shows this in one of examples.
MySQL's CSV engine does NOT interpret "", inside quotes properly. It requires sequence like \", to be there instead, without clear reason (I see nothing like this explained here, http://dev.mysql.com/doc/refman/5.6/en/csv-storage-engine.html).
How to repeat:
On any MySQL server version execute the following:
mysql> CREATE TABLE `emp` (
-> `col1` text NOT NULL,
-> `col2` text NOT NULL
-> ) ENGINE=CSV DEFAULT CHARSET=utf8
-> ;
Query OK, 0 rows affected (0.11 sec)
mysql> insert into emp values ("alan", "newyork"), ("jim", "CA\",boston");
Query OK, 2 rows affected (0.06 sec)
Records: 2 Duplicates: 0 Warnings: 0
mysql> select * from emp;
+------+------------+
| col1 | col2 |
+------+------------+
| alan | newyork |
| jim | CA",boston |
+------+------------+
2 rows in set (0.00 sec)
mysql> flush tables;
Query OK, 0 rows affected (0.05 sec)
Now, check what is in emp.CSV file in the database directory. You'll see:
"alan","newyork"
"jim","CA\",boston"
I do not see this documented on Wiki as acceptable way of quoting. Now, change file to conform to "standard":
"alan","newyork"
"jim","CA"",boston"
Then check how it is interpreted/loaded:
mysql> flush tables;
Query OK, 0 rows affected (0.00 sec)
mysql> select * from emp;
+------+---------+
| col1 | col2 |
+------+---------+
| alan | newyork |
| jim | CA" |
+------+---------+
2 rows in set (0.02 sec)
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.5.33 |
+-----------+
1 row in set (0.01 sec)
Have fun with big CSV files created by non-MySQL software.
Suggested fix:
MySQL's CSV engine should follow CSV format standard (http://tools.ietf.org/html/rfc4180) in this case.