mysql选择进入csv转义换行错误

kan*_*dan 2 mysql file-io select newline

我试图将sql select保存到csv文件中,而不是稍后在excel中打开

错误 :

ERROR 1083 (42000) at line 1: Field separator argument is not what is expected; check the manual
Run Code Online (Sandbox Code Playgroud)

查询是:

SELECT 'Description' 
union
SELECT coalesce(replace(d.description,'\r\n','\n'),'') 
INTO OUTFILE \"$FILE_PATH$FILE_NAME\"
FIELDS ESCAPED BY '""' TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n'
FROM data d
Run Code Online (Sandbox Code Playgroud)

问题在于"ESCAPED BY"是它应该在描述字段中转义保存在数据库中的新行字符.(我不希望文件中的新字符在打开csv时在excel中创建多行).

Mysql服务器是5.5版.5.0工作正常,但由于在mysql教程中使用"ESCAPED BY",我不明白为什么我在这里遇到问题.

用于在字段中保留换行符的源:http: //dev.mysql.com/doc/refman/5.5/en/select.html

谢谢.

Tim*_*rch 5

问题是ESCAPED BY子句期望单个字符.根据MySQL手册,语法如下:

[FIELDS
    [TERMINATED BY 'string']
    [[OPTIONALLY] ENCLOSED BY 'char']
    [ESCAPED BY 'char']
]
Run Code Online (Sandbox Code Playgroud)

将ESCAPED BY'""改为ESCAPED BY'''应解决问题.