问题现象
包含列分隔符的第一个字符的数据的导出。
解决方法
由于导出数据中包含列分隔符的第一个字符,这时导出程序会给数据中与列分隔符
第一个字符重复的字符进行转义。
举例如下:
数据库里的数据:
col1 col2
a 1|2|3
第一种情况:分隔符是
“|@$”
时,直接使用
select
命令导出数据:
a|@$1\|2\|3
由于
“|”
被加了转义符,所以在导入的时候出现错误。
第二种情况:分隔符是
“@$”
时,直接使用
select
命令导出数据:
a@$1|2|3
由于
“|”
没有加转义符,此时导入数据是正确的。
第三种情况:分隔符是
“|@$”
时,使用
select
命令并增加
escaped by
导出数
据:
a@$1|2|3
由于
“|”
没有加转义符,此时导入数据是正确的。
结论
:在数据内容包含列分隔符首字符时,需要增加
escaped by
,以解决转义问题。