首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将txt文件导入MySQL保持特殊字符

如何将txt文件导入MySQL保持特殊字符
EN

Stack Overflow用户
提问于 2013-08-27 07:48:50
回答 1查看 3.3K关注 0票数 2

我想使用命令将txt文件导入mysql数据库。

代码语言:javascript
复制
LOAD DATA LOCAL INFILE 'c:/mydatabase.txt' INTO TABLE mytable COLUMNS TERMINATED BY '\t'

但是,数据的一列是包含特殊字符(如"\“)的filepath。我发现上面的import命令跳过了路径名字符串中的所有"\“。

在将数据导入mysql时,有什么方法可以保留特殊的字符吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-27 08:25:54

LOAD DATA INFILE还支持一个FIELDS ESCAPED BY子句,它允许您指定MySQL用于标识字符串中的特殊字符的字符,例如单引号中的单引号或制表符(就像您在FIELDS TERMINATED BY子句中使用的那样,表示为\t)。

FIELDS ESCAPED BY子句的默认值是\ (反斜杠),这就是为什么您的路径字符被MySQL解释,然后被忽略;转义非特殊字符只返回该字符,因此\1只返回1。但是,文件名(如c:\tmp\newfile )会出现问题,因为\t\n都被解释为特殊字符。

如果通过执行FIELDS ESCAPED BY ''将转义字符保留为空白,则导入不会解释反斜杠,但如果导入中有需要转义的字符,则可能会出现其他问题。通过查找用于生成文本文件的转义字符,您将了解这一点,然后可以在FIELDS ESCAPED BY子句中使用该字符。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18459847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档